我使用Windows,並有一個目錄是這樣的:PIP說,這是一個包,由蟒蛇說,這是不是
troopcalc/
setup.py
troopcalc/
__init__.py
troopcalc.py
troopcfg.py
tests/
__init__.py
test_troopcalc.py
test_troopcfg.py
我使用PIP安裝包......和PIP列表顯示了包安裝並指向目錄結構的頂部。
troopcfg.py
:
class TroopCfg(object):
...
troopcalc.py
:
from troopcalc.troopcfg import TroopCfg
setup.py
:
from setuptools import setup
setup(name='troopcalc',
version='0.1',
description='Calculates troop distribution',
url='...',
author='Randell ...',
author_email='...',
packages=['troopcalc', 'troopcalc.tests', 'troopcalc.data'],
package_dir={'troopcalc': 'troopcalc', 'troopcalc.tests': 'troopcalc/tests', 'troopcalc.data': 'troopcalc/data'},
package_data={'troopcalc.data': ['*.json']},
)
如果我跑python .\troopcalc.py
我得到如下:
Traceback (most recent call last):
File ".\troopcalc.py", line 2, in <module>
from troopcalc.troopcfg import TroopCfg
File "...\python\troopcalc\troopcalc\troopcalc.py", line 2, in <module>
from troopcalc.troopcfg import TroopCfg
ImportError: No module named 'troopcalc.troopcfg'; 'troopcalc' is not a package
PIP說,這是一個包,但蟒蛇說,這是不是。目標不是使用絕對路徑當然。我錯過了什麼?
謝謝。
你可以發佈所有Python文件中的所有導入行嗎?你也可以修復目錄結構的格式,因爲它很難理解。 – Steve
是啊,對不起,我沒有注意到目錄結構被砸了。 __init __。py's全部爲空。 – Randell
小心打破它,我確實已經爲你修好了 – gia