从python包中的模块导入函数

从python包中的模块导入函数,python,Python,我有一个名为'package'的包,其中包含模块module1.py和module2.py我将该包作为 import package from package import module1 在模块1中,每当我将函数作为导入时,我都有一个名为func的函数 from module1 import func 并使用它,函数作为 module1.func(x) 它不起作用 问题出在哪里?应该怎么做?您可以选择: from module1 import func func(x) 或 modu

我有一个名为'package'
的包,其中包含模块
module1.py
module2.py
我将该包作为

import package
from package import module1
在模块1中,每当我将函数作为
导入时,我都有一个名为func的函数

from module1 import func
并使用它,函数作为

module1.func(x)
它不起作用
问题出在哪里?应该怎么做?

您可以选择:

from module1 import func

func(x)

 module1.func(x)
真实世界的例子应说明事物是如何工作的:

>>> import os
>>> os.path.abspath("C:/Documents")
'C:\\Documents'
>>>
>>> from os import path
>>> path.abspath("C:/documents")
'C:\\documents'
>>>
>>> from path import abspath
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named path
>>>
>>> from os.path import abspath
>>> abspath("C:/documents")
'C:\\documents'
导入操作系统 >>>abspath(“C:/Documents”) 'C:\\Documents' >>> >>>从操作系统导入路径 >>>path.abspath(“C:/documents”) 'C:\\documents' >>> >>>从路径导入abspath 回溯(最近一次呼叫最后一次): 文件“”,第1行,在 ImportError:没有名为path的模块 >>> >>>从os.path导入abspath >>>abspath(“C:/documents”) 'C:\\documents'
您可以导入为:

from foo import bar

bar(baz)
或:

在某些情况下,还可能有助于:

from foo import bar as qux

qux(baz
还有一个关于处理导入的选项可用。

2选项:

from package.module1 import func
func(x)
第二种选择:

from package import module1
module1.func(x)

更加具体;你说的“它不工作”是什么意思?你有错误吗?什么不起作用?
from package import module1
module1.func(x)