2017-01-27 5 views
0

Привет немного frusutriated здесь, любая помощь будет удивительно привет Я использую Windows Server 2012 R2 Я установил питон 2.7.13PyMongo обыкновение работать :(Пробовал все

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 

Ive синтаксического дерева d удаляя pymongo, а затем удаляя python, а затем повторно устанавливая python, а затем pymongo в этом порядке - ive double checked нет других версий python на компьютере, и все же я не могу заставить его работать ....

Любые идеи?

п.с. мой код

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 

ответ

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())" 

импортирует оригинальный модуль, потому что вы выполняете эту команду из другой директории, где находится не пользовательский модуль, поэтому интерпретатор ищет ее в глобальном масштабе

Смежные вопросы