我认为这是为了激活打印所有logging.debug() 的 Debug模式消息。但显然这不会发生。 The documentation简单地说:
Turn on parser debugging output (for wizards only, depending on compilation options). See also PYTHONDEBUG.
在我看来这并不能解释任何事情。有人可以给出更详细的解释并验证确实没有激活调试日志记录的默认 CPython 参数吗?
最佳答案
来自 Parser/parser.c :
#ifdef Py_DEBUG
extern int Py_DebugFlag;
#define D(x) if (!Py_DebugFlag); else x
#else
#define D(x)
#endif
此 D
宏与 printf()
一起使用,以在提供调试标志并在 Debug模式下编译解释器时打印调试消息。调试消息适用于 Python 开发人员,即 Python 本身的工作人员(不要与 Python 程序员混淆,后者是使用 Python 的人员)。我浏览了 Python 手册页,但都没有激活 logging
Debug模式。但是,可以将 -i
标志与 -c
结合使用以达到相同的效果:
python -i -c "import logging;logging.basicConfig(level=logging.DEBUG)"
关于python - "python -d"是做什么用的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19907401/