繁体   English   中英

Ubuntu上的Python3在help()命令上给出错误

[英]Python3 on Ubuntu giving errors on help() command

我在Ubuntu 14.04的python3 shell中使用了help(),我得到了这个输出。请帮助,不知道怎么了。

Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> help()
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/usr/lib/python3.4/_sitebuiltins.py", line 98, in __call__
import pydoc
File "/usr/lib/python3.4/pydoc.py", line 65, in <module>
import platform
File "/home/omega/platform.py", line 2, in <module>
print("System    : ",platform.uname().system)
AttributeError: 'module' object has no attribute 'uname'
>>> 

问题在于platformhelp使用的stdlib模块的名称。 通过使用与sys.path stdlib之前相同的名称创建自己的模块,可以防止Python使用标准模块。

您自己的platform模块尝试使用同名的stdlib模块的事实使问题更加复杂。 那是行不通的。 您在该模块中的import platform只是在导入自身。

解决的办法是不要这样冲撞名字。 查看标准模块列表,如果要直接或间接使用该模块中的功能,请勿创建与它们同名的任何东西。

换句话说:将platform.py重命名为其他名称,或将其放入包中。

File "/home/omega/platform.py", line 2, in <module>
print("System    : ",platform.uname().system)

这是问题所在,请转到platform.py并修复它,可以。 它说, 平台没有任何您可能错误键入的称为uname的方法。

暂无
暂无

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

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