Nie można importować niczego z sześciu. Obie te linie uzyskując błędy:Nie można importować z biblioteki Python Six
from six.moves.urllib.request import urlretrieve
->Unresolved reference "urlretrieve"
from six.moves import cPickle as pickle
->Unresolved reference "cPickle"
OSX 10.11.5. IntelliJ 2016.1.2, PyCharm 2016.1.3, Python 2.7.11, Six 1.10.0.
Co zrobiłem, aby spróbować naprawić (na PyCharm shows unresolved references error for valid code i innych stanowisk):
- Switched tłumaczy Python
- IntelliJ: usunięty plik pomysł
- IDE -> Unieważnij skrzynek/Restart
- stworzył zupełnie nowy projekt z tego samego źródła
- Switched (IDE IntelliJ -> pycharm)
- Zweryfikowane sześć jest aktualna:
_
$ sudo pip install -U six
Requirement already up-to-date: six in /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/six-1.10.0-py2.7.egg
Python SDK Próbowałem:
Python 2.7.11 (/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7)
Python 3.5.1 (/Library/Frameworks/Python.framework/Versions/3.5/bin/python3.5)
Python 2.7.10 (/usr/local/bin/python2.7)
Nic nie działało. Pomoc byłaby mile widziana! Dzięki.
---------- Aktualizacja 23 maja 2016 r. -------------------------------
Uruchamianie wierszy importowanych z wiersza poleceń "from six.moves ..." nie powoduje błędów. Wiersz poleceń wywołuje Python 2.7.11. PyCharm również używa Pythona 2.7.11, a PyCharm pokazuje również, że sześć jest dostępnych - zobacz pierwsze zrzuty ekranu. W projekcie nie ma plików .pyc, tylko main.py. Dziwne, main.py działa bez błędów w PyCharm; linia "Hello" jest drukowana (patrz drugi zrzut ekranu). Ten zrzut ekranu pokazuje interpreter projektu w ustawieniach: Nadal jestem zakłopotany.
---------- Aktualizacja 24 maja 2016 r. -----------------------------
import six
działa bezbłędnie w kodzie i powłoce pythona, a po wykonaniu sześć. plik = /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/six-1.10.0-py2.7.egg/six.pyc
. Jednak IDE PyCharm nadal pokazuje błędy w wierszach importu six.moves.
Czy linie wyświetlane są w kodzie, który próbujesz wczytać i uruchomić? Czy próbowałeś po prostu wpisać te linie do powłoki Pythona? –
Tak, powyższe linie importu są w kodzie, który chcę uruchomić. Jeszcze nie wprowadziłem kodu operacyjnego, starałem się, aby cały import działał jako pierwszy. Ten kod pochodzi z samouczka Google Tensorflow. Kiedy wpisuję te linie w powłokę Pythona, nie dostaję żadnego błędu, więc może są to tylko ostrzeżenia, które mogę zignorować, jak sugeruje Burhan poniżej? –
Tak więc, Burhan mówi, że musisz uruchomić interpreter Pythona, który zna około sześciu, aby go zaimportować. Najwyraźniej jest to ten, który dostajesz po uruchomieniu powłoki z wiersza poleceń. Musisz dowiedzieć się, jak utworzyć PyCharm lub IntelliJ lub jakiekolwiek narzędzie, którego chcesz użyć, uruchomić interpreter, który zna około sześciu, aby import mógł zadziałać. Jeśli jest to wspomniany przez niego problem z pamięcią podręczną, błąd powinien zniknąć po ponownym utworzeniu pamięci podręcznej. Spróbuj usunąć pliki o nazwach * .pyc i katalogi o nazwie __pycache__ i sprawdź, czy to pomaga. –