繁体   English   中英

日志模块不适用于 Python3

[英]Logging module not working with Python3

我在使用标准日志记录模块时遇到问题。 如果我打开一个 python2.7 shell 并导入日志,一切正常:

$ python
>>> import logging
>>>

但是如果我打开一个 python3.4 shell 并导入日志记录,我会收到以下错误:

$ python3.4
>>> import logging
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<frozen importlib._bootstrap>", line 2237, in _find_and_load
File "<frozen importlib._bootstrap>", line 2222, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 2164, in _find_spec
File "<frozen importlib._bootstrap>", line 1940, in find_spec
File "<frozen importlib._bootstrap>", line 1916, in _get_spec
File "<frozen importlib._bootstrap>", line 1897, in _legacy_get_spec
File "<frozen importlib._bootstrap>", line 863, in spec_from_loader
File "<frozen importlib._bootstrap>", line 904, in spec_from_file_location
File "/Library/Frameworks/Python.framework/Versions/3.4/lib/python3.4/site-packages/logging-0.4.9.6-py3.4.egg/logging/__init__.py", line 618
raise NotImplementedError, 'emit must be implemented '\
                         ^
SyntaxError: invalid syntax

我不知道问题是什么,似乎找不到其他有同样问题的人。

日志模块默认存在于 Python 3 环境中。无需导入。

您似乎在您的 Python 3 环境中安装了一个名为logging第三方库,该库隐藏了标准库版本,并且其中一个文件有错别字。

我愚蠢地创建了一个名为logging.py的文件来尝试一些日志功能。 然后在尝试下面的代码时,它实际上是在引用自己,无法找到调试方法。

import logging

logging.debug("Debug message")

将我的文件名更改为logtest.py解决了问题。

对我来说,这是以前在旧 Python 版本下安装的日志库。

pip3 uninstall logging

为我修好了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM