【发布时间】:2015-06-24 14:12:43
【问题描述】:
我尝试了this answer 的多种解决方案,它们似乎给出了不同的结果。我正在使用virtualenv,我想知道它是否与此有关。第一种方法,来自 python shell(在虚拟环境处于活动状态时):
import pip
installed_packages = pip.get_installed_distributions()
installed_packages_list = sorted(["%s==%s" % (i.key, i.version)
for i in installed_packages])
print(installed_packages_list)
这给出了输出
['distribute==0.6.34', 'django==1.8.1', 'flup==1.0.3.dev-20110405', 'importlib==1.0.3']
第二种方法,来自 bash shell,在虚拟环境处于活动状态时再次:
pip freeze
这给出了以下列表:
Warning: cannot find svn location for flup==1.0.3.dev-20110405
Django==1.8.1
Ksplice-Uptrack==1.2.12
MySQL-python==1.2.2
PIL==1.1.7
South==0.7.6
distribute==0.6.34
django-photologue==2.4
dnspython==1.11.1
ethtool==0.6
## FIXME: could not find svn URL in dependency_links for this package:
flup==1.0.3.dev-20110405
importlib==1.0.3
iniparse==0.3.1
iotop==0.3.2
iwlib==1.0
mercurial==1.4
pycurl==7.19.0
pygpgme==0.1
pyzor==1.0.0
urlgrabber==3.9.1
virtualenv==1.9.1
yum-metadata-parser==1.1.2
有人可以解释为什么会这样吗?基本上,我希望能够从第二个列表中导入包,但我不能(特别是,我的 Django 服务器无法导入 MySQLdb,例如 this question,即使在尝试了他们的答案之后)。
【问题讨论】:
标签: python mysql django bash virtualenv