Dodawanie modułów Pythona do pydev w eclipse powoduje błąd importu?

Mam problem z rozpoznaniem już zainstalowanych modułów PyDev na eclipse. Oto moje szczegółowe podejście. Maszyna jest Mac (Snow Leopard).

W terminalu polecenie

python --version

Pokazuje Python 2.6.6.

import unidecode

I

from unidecode import unidecode

Działa zarówno dobrze!

Zainstalowałem PyDev w Eclipse i poszedłem skonfigurować interpreter Pythona (Auto Config). Wybrałem wszystkie proponowane pakiety i trafiłem Apply i Ok .

Ale eclipse ciągle narzeka

Traceback (most recent call last):
  File "/Users/me/Documents/workspace/myproject/python/pythontest.py", line 12, in <module>
    from unidecode import unidecode
ImportError: No module named unidecode

Plik Pythona wygląda tak

#!/usr/bin/env python
# encoding: utf-8


import sys
import os
from unidecode import unidecode


def main():
    print unidecode(u"Ågot Aakra")

if __name__ == '__main__':
    main()

Kiedy usuwam pierwszą linijkę w skrypcie

#!/usr/bin/env python

Powoduje ten sam błąd.

Czy ktoś wie, gdzie leży problem?
Author: Aufwind, 2011-05-20

11 answers

Oto rozwiązanie mojego problemu:

  1. znajdź ścieżkę do folderu ../site-packages/ odpowiadającej Ci wersji Pythona. ( Dla mnie to było /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/ dla Pythona 2.6 na moim Macu z Snoe Leopard.)
  2. Otwórz Preferencje eclipse i przejdź do PyDev -> Interpreter-Python .
  3. po lewej stronie dolnego pola kliknij na Nowy Folder.
  4. Dodaj nawigację do ../site-packages/ odpowiadającej Ci wersji Pythona.
  5. Hit open .
  6. Hit Zastosuj .
  7. Hit Ok .
/ Align = "left" / =)

Dzięki @ all particionts, który podpowiedział we właściwym kierunku w komentarzach.

 26
Author: Aufwind,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-20 19:55:05

Wpadłam dziś na ten sam problem. Używam pydev i miałem działający projekt z wieloma pod-pakietami. Nagle po utworzeniu nowego modułu nie byłem w stanie użyć tego modułu w innym pakiecie. Zagadkową cechą było to, że mogę użyć innego modułu w tym samym podpakiecie...

Wreszcie po

  1. Eclipse restart
  2. Usuń / Dodaj interpreter Pythona i wszystkie pakiety witryny
  3. poirytowana Głowa-drapanie

Usunąłem wszystkie skompilowane klasy z następującym skryptem:

import os

def clean_folder(folder):
  for file in os.listdir(folder):
    path = os.path.join(folder,file)
    if os.path.isdir(path):
        clean_folder(path)

    if '.pyc' == file[-4:]:
        print 'deleting: ' + str(path)
        os.remove(path)

if __name__ == '__main__':
  folder = 'YOUR_PROJECT_SRC_PATH'
  clean_folder(folder)

I wreszcie mogę wykonać "rzeczywistą" pracę :) Mam nadzieję, że to komuś pomoże...

 2
Author: jogamü,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-03 22:15:29

Możesz po prostu dodać moduł do ścieżki pydev. Przejdź do właściwości projektu (z menu kontekstowego) - > PyDev - > PYTHONPATH - > Biblioteki zewnętrzne. W zależności od tego, czy moduł znajduje się w folderze źródłowym, czy w pliku zip/egg, wybierz opcję Dodaj folder źródłowy lub Dodaj zip/jar/egg. Przejdź do katalogu site-packages i wskaż odpowiedni plik lub folder (MÓJ to: / usr/local/lib / pythonx.x / site-packages)

 2
Author: picmate 涅,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-12 20:22:47

Gdy Eclipse zostanie 'utracone' w odniesieniu do pakietów istniejących w Twoim systemie lub w Twoim projekcie, z menu kontekstowego twojego projektu wybierz pozycję 'Właściwości', następnie pozycję 'PyDev-PYTHONPATH' w widoku drzewa po lewej stronie okna dialogowego, a następnie przycisk 'Force restore internal info'. Wygląda na to, że PyDev przechowuje obliczoną pamięć podręczną informacji, a gdy z jakiegokolwiek powodu pamięć podręczna stanie się niespójna, możesz zmusić PyDev do ponownego obliczenia.

 1
Author: bootchk,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-02-17 12:05:43

W moim przypadku nie otrzymywaĺ 'em tego bĹ' Ä ™ du przed kompilacjÄ..., ale podczas kompilacji dostaĹ 'em bĹ' Ä ™ d ImportError: no module named myant.rdzeń . Próbowałem dodać pliki z PyDev-PYTHONPATH , ale znowu dostałem ten sam błąd. Wtedy zdałem sobie sprawę, że w rzeczywistości nie muszę dodawać ścieżki dokładnie do folderu, w którym znajdują się moje pliki. py. W rzeczywistości muszę dodać folder, w którym myant.rdzeń {[4] } znajduje się. Po zrobieniu tego zrobiłem restart, gdy ponownie skompilowałem mój projekt, problem został rozwiązany. Podzielę się tym, co mam:

Python 2.7 Eclipse 4.3, PyDev 3.9.2 i na moim ubuntu 14.04

.Py Lokalizacja plików: /${PROJECT_DIR_NAME}/src/myant/core, dlatego dodałem /${PROJECT_DIR_NAME}/src

 1
Author: BitByte_Bake,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-04-01 15:44:25

Spróbuj preferences > pydev > interpreter-python i usuń i ponownie dodaj interpreter Pythona (upewnij się, że znasz ścieżkę do niego przed usunięciem go), po ponownym dodaniu Zaznacz wszystkie pola.

 0
Author: cerberos,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2011-05-20 19:07:54

@Aufwind Twoja odpowiedź powyżej pomogła, ale nie rozwiązała dla mnie.

  • znajdź ścieżkę do folderu ../ site-packages /...
  • Otwórz Preferencje eclipse i przejdź do PyDev - > Interpreter-Python.
  • po lewej stronie dolnego pola kliknij na Nowy Folder. - - - > tutaj odszedłem od twoich instrukcji. Dodałem jajko do modułu, którego nie rozpoznano. Dodanie folderu site-packages tego nie naprawiło.
  • Otwórz.
  • Hit Zastosuj.
  • Hit Ok.

I wtedy byłem gotowy. =)

 0
Author: tjim,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-09-06 22:37:42
  1. Otwórz okno eclipse - > preferences i przejdź do PyDev - > Interpreter.
  2. Kliknij "sprawdź, czy interpretery są zsynchronizowane ze środowiskiem"
To mi pomogło. Nie był wymagany restart Eclipse.
 0
Author: IEEE754,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-05-10 05:58:58

Naprawiłem ten problem przechodząc do właściwości projektu -> PyDev Django oraz ustawienie modułu Django settings.Tutaj wpisz opis obrazka

 0
Author: Jerome,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-28 19:41:33

dla Oxygen 2 (myślę, że zadziałało też na wcześniejszych wersjach)...

  1. Kliknij prawym przyciskiem myszy na folderze projektu i wybierz "Właściwości"
  2. Wybierz "PyDev-Interpreter / Gramatyka"
  3. Kliknij na "Kliknij tutaj, aby skonfigurować interpreter nie wymieniony na liście"
  4. Wybierz dowolny istniejący interpreter z górnej listy skonfigurowanych interpreterów
  5. powinno pojawić się okno dialogowe "selection Needed", w którym należy wybrać jeden lub więcej interpreterów do przywrócenia. Sprawdź to wszystko Zastosuj
  6. Kliknij "Ok", a PyDev przeskanuje ponownie i zakładam, że przebuduje jakiś wewnętrzny widok twojej witryny-Pakiety
  7. Kliknij "Zastosuj i zamknij", aby zamknąć wszystkie okna dialogowe

Aby znacznik błędu importu zniknął w edytorze kodu, muszę wpisać spację po imporcie, a następnie zapisać zmianę. Błąd importu znika, ponieważ PyDev może teraz znaleźć obrażający moduł importu.

 0
Author: chromeeagle,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-22 19:53:34

Załóżmy, że Twój wieczny moduł jest w /.

Uruchom Eclipse i przejdź do opcji project. Wybierz " PyDev-PYTHONPATH" po prawej stronie zobaczysz okno z zakładkami. Wybierz tam zewnętrzne Biblioteki. Kliknij Dodaj Folder źródłowy i wybierz bibliotekę z powyższej ścieżki.

 -1
Author: Syed Taha OWais,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2013-02-12 17:43:32