手动向virtualenv添加模块 [django,python]
我有一个虚拟环境,里面有一个Django项目。现在我想添加一个我自己写的模块,叫做 RandomTools.py
。我把这个文件放到虚拟环境的 \Lib\site-packages
文件夹里,然后通过这个虚拟环境运行项目,结果出现了一个错误:
ImportError: No module named RandomTools.py
那我应该把这个模块文件放在哪里呢?
2 个回答
0
你应该为你的模块创建一个文件夹,而不是直接把文件放到 \Lib\site-packages 里。
比如,你可以把这个文件夹命名为:RandomToolsFolder。
在 RandomTools 文件夹里,
你必须有一个 __init__.py
文件,这个文件的作用是告诉 Python 这个目录是一个模块。然后你可以把你的 RandomTools.py 文件放在同一个目录里。
这样,你的导入语句就会是:
from RandomToolsFolder import RandomTools
0
我建议你为你的模块创建一个setup.py文件。
文件夹结构:
/
/setup.py
/RandomTools/*
setup.py文件内容:
from setuptools import setup, find_packages
setup(
name = "RandomTools",
version = "0.1",
packages = find_packages(),
)
然后你可以通过运行 python setup.py install
来安装你的RandomTools。
你可以在 这里 阅读完整的文档。