我是新來的Python,我想了解一個問題,這是我在創建包時看到的。 我有以下文件結構:(工作目錄是/我/的Python/jmLib2)python3:ImportError:沒有名爲xxxx的模塊
/my/Python/jmLib2
|--- Phone
| |--- __init__.py
| |--- Pots.py
|- Test2.py
---------------------------------
cat ./jmLib2/Pots.py
#!/usr/bin/python
def Pots():
print ("I'm Pots Phone")
---------------------------------
cat ./jmLib2/__init__.py
from Pots import Pots
---------------------------------
cat ./Test2.py
#!/usr/bin/python
from Phone import Pots
import os.path
print ("OS:"+str(os.path))
Pots()
當我現在做的事:
python2 Test2.py
OS:<module 'posixpath' from '/usr/lib/python2.7/posixpath.pyc'>
I'm Pots Phone*
偉大的...但是,如果我請執行以下操作:
python3 Test2.py
Traceback (most recent call last):
File "Test2.py", line 2, in <module>
from Phone import Pots
File "/home/juergen/my/Python/jmLib2/Phone/__init__.py", line 1, in <module>
from Pots import Pots
ImportError: No module named 'Pots'
我正在Eclipse下使用PyDev。 PyDev在init .py文件中報告了一個「未解析的導入:Pots」 - 錯誤。 我在PyDev和bash下有相同的回溯問題。
再一次,我是Python新手......所以這可能是一個非常愚蠢的錯誤。 但有人可以解釋我,python2和python3.4之間的區別嗎? 我必須修改PYTHONPATH嗎?爲什麼?
問候 爾根
安德烈:三江源快速而詳細的答案。 – MatrixClient