在python中导入类型

在python中导入类型,python,import,module,Python,Import,Module,我有一个名为types的模块,其中包含以下代码 def Hello(): return "Hello World" 但当我这么做的时候 >>> import types >>> types.Hello() 它给了我 Traceback (most recent call last): File "<stdin>", line 1, in <module> AttributeError: 'module' object has

我有一个名为
types
的模块,其中包含以下代码

def Hello():
    return "Hello World"
但当我这么做的时候

>>> import types
>>> types.Hello()
它给了我

Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'module' object has no attribute 'Hello'
回溯(最近一次呼叫最后一次):
文件“”,第1行,在
AttributeError:“module”对象没有属性“Hello”

这真让我抓狂。

类型
是一个内置模块,
import
在查看本地包之前先搜索内置模块

>>> import types
>>> types
<module 'types' from '/usr/lib/python2.7/types.pyc'>

实际上,
types
是一个内置模块,它不提供
Hello
函数。如果你想创建一个服装模块,你需要把它放在你的python目录中


请注意,模块的名称不应与python内置模块相同

不要将模块命名为与Python内置模块相同的,阅读并获得更好的想法

4.8。间奏曲:编码风格

对于Python,它已经成为大多数项目的风格指南 坚持它促进了一种可读性强、赏心悦目的编码风格。 每个Python开发人员都应该在某个时候阅读它;这里是最重要的 为您提取的要点:

统一命名您的类和函数;公约将使用 CamelCase表示类,lower_case_表示函数,带有下划线 和方法。始终使用self作为第一个方法参数的名称 (有关类和方法的更多信息,请参见类的第一眼)


刚刚从本节发布了与您的问题相关的内容。

您的模块路径是什么?以及如何运行代码?请仔细查看模块的保存位置,以及可以放置的路径。看一看,可以从其他路径导入模块,例如到。或者不要将模块命名为与内置模块相同的名称。请记住!但只有当你知道这些模块已经存在时,答案才是正确的。。无论何时创建模块,都应该注意python库中并没有同名的模块。导入类型仅在包内有效;它不是区分标准模块和本地定义模块的通用技术。
>>> from . import types