ylab color change python debugging import trace

color - Importaciones de Trace Python



python plotly axis (2)

Inicie el intérprete de python con -v :

$ python -v -m /usr/lib/python2.6/timeit.py # installing zipimport hook import zipimport # builtin # installed zipimport hook # /usr/lib/python2.6/site.pyc matches /usr/lib/python2.6/site.py import site # precompiled from /usr/lib/python2.6/site.pyc # /usr/lib/python2.6/os.pyc matches /usr/lib/python2.6/os.py import os # precompiled from /usr/lib/python2.6/os.pyc import errno # builtin import posix # builtin # /usr/lib/python2.6/posixpath.pyc matches /usr/lib/python2.6/posixpath.py import posixpath # precompiled from /usr/lib/python2.6/posixpath.pyc # /usr/lib/python2.6/stat.pyc matches /usr/lib/python2.6/stat.py import stat # precompiled from /usr/lib/python2.6/stat.pyc # /usr/lib/python2.6/genericpath.pyc matches /usr/lib/python2.6/genericpath.py import genericpath # precompiled from /usr/lib/python2.6/genericpath.pyc # /usr/lib/python2.6/warnings.pyc matches /usr/lib/python2.6/warnings.py import warnings # precompiled from /usr/lib/python2.6/warnings.pyc # /usr/lib/python2.6/linecache.pyc matches /usr/lib/python2.6/linecache.py import linecache # precompiled from /usr/lib/python2.6/linecache.pyc # /usr/lib/python2.6/types.pyc matches /usr/lib/python2.6/types.py import types # precompiled from /usr/lib/python2.6/types.pyc # /usr/lib/python2.6/UserDict.pyc matches /usr/lib/python2.6/UserDict.py ...

Luego simplemente grep para su antiguo módulo.

La biblioteca de My Python acaba de cambiar su nombre de módulo principal de foo.bar a foobar . Para la compatibilidad con versiones anteriores, foo.bar aún existe, pero importarlo genera algunas advertencias. Ahora, parece que algún programa de ejemplo todavía importa del antiguo módulo, pero no directamente.

Me gustaría encontrar la declaración de import errónea. ¿Hay alguna herramienta que me permita rastrear las importaciones y encontrar al culpable sin vadear todo el código?


edite el módulo foo.bar, agregue el siguiente código:

import pdb pdb.set_trace()

cuando se importe foo.bar, el programa se detendrá en pdb.set_trace () en modo pdb, donde puede depurar su código. Por ejemplo, puede usar el comando "w" para imprimir la pila de llamadas completa.