package_name/
__init__.py
script.py
time.py
我尝试从time
导入script.py
(内置包)。然而,我的兄弟time.py
却被联系起来。
导入包全球 的语法是什么?(例如从/usr/lib/python2.7/dist-packages
导入)
c#
中,我知道它是global::
前缀,它在python中的等价物是什么?答案 0 :(得分:2)
对您的导入更明确。
import time
将导入python时间模块。
from mypackage import time
将导入mypackage包中的time模块。
import time
永远不应导入mypackage.time
那就是说,不要影响python的内置名称,这是一个坏习惯,后来会引发这些令人头疼的问题。
答案 1 :(得分:2)
虽然还有其他方法,但我采用了这个方法
1)添加子包
我们称之为 utils
。您的目录树应如下所示:
package_name/
__init__.py
script.py
time.py
utils/
__init__.py
2)在该软件包
下创建名为builtin.py
的文件
这应该是builtin.py
:
import time
time = time
3)使用它!
使用以下内容在time
中导入script.py
:
from utils.builtin import time
time.sleep(5)