我有三個文件,import語句以下列方式進行:爲什麼此導入序列會產生錯誤?
main.py
from file1 import *
from file2 import *
def someFunc():
print("hi")
file1.py
from main import someFunc as sayHi
class A:
def __init__(self):
pass
sayHi()
file2.py
from file1 import *
a = A()
只要寫入file1.py中的導入行,就會出現此錯誤:ImportError: cannot import name someFunc
。和另一個編譯器,我得到NameError: Name 'A' is not defined
。這是爲什麼?
你需要'file1'不'file1.py' - 記住進口是通過Python模塊的名稱,而不是文件名。 – 2012-08-13 06:27:19