这里有点frusutriated,任何帮助将是惊人的 嗨,我正在使用Windows Server 2012 R2 我已经安装了python 2.7.13
C:\Python27>python -c "import sys; print(sys.version)"
2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)]
和
C:\Python27>python -c "import pymongo; print(pymongo.version); print(pymongo.has
_c())"
3.4.0
True
然而,当我运行我的代码时,我得到了
C:\Python27>python C:\Python_scripts\ExcelGenerator.py
Extracting all files from MongoDB
Traceback (most recent call last):
File "C:\Python_scripts\ExcelGenerator.py", line 24, in <module>
from pymongo import MongoClient
File "C:\Python_scripts\pymongo.py", line 8, in <module>
from pymongo import MongoClient
ImportError: cannot import name MongoClient
我试过卸载pymongo然后卸载python然后按顺序重新安装python然后pymongo - 我已经双重检查了计算机上没有其他版本的python而且我仍然无法让它工作....
有什么想法吗?
ps我的代码是
from pymongo import MongoClient
client = MongoClient('mongodb://xx.x.x.x:xxxxx/')
db = client.the_database
db.authenticate('xxx', 'xxxx', source='xxxx')
coll = db.dataset
答案 0 :(得分:1)
看看那一行:
File "C:\Python_scripts\pymongo.py", line 8, in <module>
问题中提到的错误是因为在Python_scripts
文件夹中有一个名为pymongo.py
的文件,因此您的程序不是导入原始模块而是导入自定义模块。
但是,执行此命令时
C:\Python27>python -c "import pymongo; print(pymongo.version); print(pymongo.has
_c())"
它导入原始模块,因为您从另一个目录执行该命令,其中没有自定义模块,因此解释器在全局范围内查找它