2016-11-23 6 views
0

Я новичок в Python и унаследовал этот проект, который работает на одной среде, но не на другом. Это то, что я получаю ...Python Newbie: «ImportError: не может импортировать имя»

Traceback (most recent call last): 
    File "/Users/orengross/Development/Clyng/infra/tests/clyng/tests/cl_same_item_in_array_twice.py", line 6, in <module> 
    from clyng.config.cl_testconfig import get_customer, Accounts, hostname 
    File "/Users/orengross/Development/Clyng/infra/tests/clyng/config/cl_testconfig.py", line 4, in <module> 
    from clyng.utils import clyngcustomeruser 
    File "/Users/orengross/Development/Clyng/infra/tests/clyng/utils/clyngcustomeruser.py", line 5, in <module> 
    from clyng.networking.network_wraper import NetworkWrapper 
    File "/Users/orengross/Development/Clyng/infra/tests/clyng/networking/network_wraper.py", line 7, in <module> 
    from clyng.utils.clyngutils import logger, normalise 
    File "/Users/orengross/Development/Clyng/infra/tests/clyng/utils/clyngutils.py", line 13, in <module> 
    from faker import Factory 
    File "/Library/Python/2.7/site-packages/faker/__init__.py", line 4, in <module> 
    from faker.factory import Factory 
    File "/Library/Python/2.7/site-packages/faker/factory.py", line 10, in <module> 
    from faker.config import DEFAULT_LOCALE, PROVIDERS, AVAILABLE_LOCALES 
    File "/Library/Python/2.7/site-packages/faker/config.py", line 13, in <module> 
    AVAILABLE_LOCALES = find_available_locales(PROVIDERS) 
    File "/Library/Python/2.7/site-packages/faker/utils/loading.py", line 19, in find_available_locales 
    provider_module = import_module(provider_path) 
    File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/Library/Python/2.7/site-packages/faker/providers/address/__init__.py", line 6, in <module> 
    from .. import date_time 
    File "/Library/Python/2.7/site-packages/faker/providers/date_time/__init__.py", line 10, in <module> 
    from dateutil.tz import tzlocal 
    File "/Library/Python/2.7/site-packages/dateutil/tz/__init__.py", line 1, in <module> 
    from .tz import * 
    File "/Library/Python/2.7/site-packages/dateutil/tz/tz.py", line 23, in <module> 
    from ._common import tzname_in_python2, _tzinfo, _total_seconds 
    File "/Library/Python/2.7/site-packages/dateutil/tz/_common.py", line 2, in <module> 
    from six.moves import _thread 
ImportError: cannot import name _thread 

Буду признателен за любую помощь.

+1

Возможный дубликат [Проблема с Matplotlib на OS X («ImportError: невозможно импортировать имя \ _thread»)] (http://stackoverflow.com/questions/27630114/matplotlib-issue-on-os-x-importerror-cannot -import имя-нить) –

ответ

0

Последней ошибкой является попытка импортировать функцию _thread из модуля six.moves.

Модуль «шесть» предназначен для работы программы Python на компьютерах с установленной базой Python 2.x или 3.x. В этом случае он ищет экземпляры ключевого слова thread в коде Python 2.x и заменяет их _thread, если на компьютере запущен Python 3.x. Документация для six.moves здесь https://pypi.python.org/pypi/six

Предложений для починки

  1. проверки, что новая машина имеет модуль six.moves установленного
  2. если код и новая машина оба запуск Python 2.x попробуйте удалить эту команду импорта. Найдите строку кода, которая говорит `from six.moves import _thread '

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

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