site
est un module qui est automatiquement importé lors de l'initialisation, et ajoute des fonctions intégrées spécifiques au site.
De plus, ce module réalise la fonction de personnalisation en chargeant le module supplémentaire spécifié, et il est possible de personnaliser spécifique au site et spécifique à l'utilisateur.
J'ai écrit usercustomize, alors n'oubliez pas que je l'ai écrit.
macOS Catalina Python 3.7
Il y a deux modules chargés par «site», «site personnaliser» et «personnaliser par l'utilisateur». Le champ d'application est différent. L'emplacement d'installation est le répertoire de chaque site-packages. Vous pouvez le vérifier comme suit.
>>> import site
>>> site.getsitepackages()
['/usr/local/var/pyenv/versions/3.7.4/lib/python3.7/site-packages']
>>> site.getusersitepackages()
'/Users/[user_name]/.local/lib/python3.7/site-packages'
python:/User/[user_name]/.local/lib/python3.7/site-packages.py
print('Hi')
Démarrer l'interprète
[user_name]@MacBook ~ % python
Hi
Python 3.7.4 (default, Oct 5 2019, 02:45:54)
[Clang 10.0.1 (clang-1001.0.46.4)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Il est affiché comme Salut.
Perfect Python introduit un hook qui utilise pdb
pour démarrer automatiquement le débogueur lorsqu'une exception est interceptée. Était là.
Le débogueur démarre chaque fois qu'une exception se produit, donc je pense qu'il est parfait pour s'habituer à pdb.
Cela est devenu pratique en apportant une légère amélioration afin que le démarrage de pdb soit ignoré lorsqu'une erreur spécifiée se produit.
usercutomize.py
import pdb
import sys
import traceback
IGNORE = {'NameError', 'ModuleNotFoundError', 'KeyboardInterrupt', 'SyntaxError'}
def debug_rescue(_type, _value, _traceback):
traceback.print_exception(_type, _value, _traceback)
if _value.__class__.__name__ not in IGNORE:
pdb.pm()
sys.excepthook = debug_rescue