从git导入自己的Python包
我自己创建了以下python包:从git导入自己的Python包,python,git,package,Python,Git,Package,我自己创建了以下python包: C:. │ .gitignore │ MANIFEST │ setup.py │ ├───.vscode │ │ settings.json │ │ │ └───.ropeproject │ config.py │ objectdb │ ├───calendarlib │ │ __init__.py │ │ │ ├───cal │ │ │ cal.py │ │
C:.
│ .gitignore
│ MANIFEST
│ setup.py
│
├───.vscode
│ │ settings.json
│ │
│ └───.ropeproject
│ config.py
│ objectdb
│
├───calendarlib
│ │ __init__.py
│ │
│ ├───cal
│ │ │ cal.py
│ │ │ event.py
│ │ │ __init__.py
│ │ │
│ │ └───__pycache__
│ │ cal.cpython-36.pyc
│ │ calendar.cpython-36.pyc
│ │ event.cpython-36.pyc
│ │ __init__.cpython-36.pyc
│ │
│ ├───database
│ │ │ db.py
│ │ │ __init__.py
│ │ │
│ │ └───__pycache__
│ │ db.cpython-36.pyc
│ │ __init__.cpython-36.pyc
│ │
│ └───ui
│ window.py
│ __init__.py
│
├───calendarlib.egg-info
│ dependency_links.txt
│ PKG-INFO
│ SOURCES.txt
│ top_level.txt
│
└───dist
calendarlib-0.1.tar.gz
calendarlib-0.2.tar.gz
\uuuu init\uuu
s为空。现在,当我在这里创建main.py
并导入内容时,这段代码就起作用了。但是当我把它推到我的git repo上时,用:pip install-U git安装它+https://github.com/frynio/calendarlib
(它出现在Python安装目录中的站点包中)并执行如下操作:
import sys
from calendarlib.ui import window
if __name__ == '__main__':
app = window.QApplication(sys.argv)
foo = window.CalendarWindow()
foo.show()
sys.exit(app.exec_())
它说:
Traceback (most recent call last):
File "main.py", line 2, in <module>
from calendarlib.ui import window
File "C:\Python36\lib\site-packages\calendarlib\ui\window.py", line 4, in <module>
from database import db
ModuleNotFoundError: No module named 'database'
回溯(最近一次呼叫最后一次):
文件“main.py”,第2行,在
从calendarlib.ui导入窗口
文件“C:\Python36\lib\site packages\calendarlib\ui\window.py”,第4行,在
从数据库导入数据库
ModuleNotFoundError:没有名为“数据库”的模块
密码在里面
我能做什么?我应该在我的应用程序中以某种方式导入它,还是应该在calendarlib
本身中更改导入?导入应该与包相关。
从calendarlib.database导入数据库
而不是
从数据库导入数据库
从github回购来看,这条线似乎是正确的。。。
也许你应该用pip重新安装?你的设置是什么。py?它在github上:https://github.com/frynio/calendarlib
看起来代码和错误不匹配calendarlib.database import db
,错误为from database import db
。你解决问题了吗?