Jestem bardzo nowy w PyDev i Pythonie, chociaż często używałem Eclipse dla Javy. Próbuję przepracować kilka przykładów Dive Into Python i wydaje mi się, że jest to niezwykle trywialny problem, który staje się niezwykle irytujący. Używam Ubuntu Linux 10.04.
Chcę móc korzystać z pliku odbchelper.py, który znajduje się w katalogu /Desktop/Python_Tutorials/diveintopython/py
Oto mój plik example.py, nad którym pracuję w moim projekcie PyDev / Eclipse:
import sys
sys.path.append("~/Desktop/Python_Tutorials/diveintopython/py")
Działa to dobrze, ale chcę, aby następna linia mojego kodu wyglądała następująco:
import odbchelper
a to powoduje za każdym razem nierozwiązany błąd importu. Dodałem __init__.py
pliki do prawie każdego możliwego katalogu i nic to nie pomaga. Próbowałem dodawać __init__.py
pliki pojedynczo do różnych poziomów katalogów między lokalizacją projektu a plikiem odbchelper.py, a także próbowałem dodawać __init__.py
pliki do wszystkich katalogów jednocześnie. Ani jedno, ani drugie nie działa.
Chcę tylko mieć projekt gdzieś w jakimś innym katalogu, powiedzmy /Desktop/MyStuff/Project
, w którym mam example.py ... a następnie z example.py chcę zaimportować odbchelper.py z/Desktop/Python_Tutorials/diveintopython/py/
Każda odpowiedź na forum dyskusyjnym, którą mogę znaleźć, po prostu mówi, aby użyć sys.path.append()
funkcji, aby dodać ten katalog do mojej ścieżki, a następnie zaimportować go ... ale to jest dokładnie to, co robię w moim kodzie i nie działa.
Próbowałem też Ctrl- 1triku, aby ukryć komunikat o błędzie, ale program nadal nie działa poprawnie. I pojawia się błąd, ImportError: No module named odbchelper
. Więc najwyraźniej nie dodaje się ścieżki lub jest problem, który __init__.py
został pominięty we wszystkich moich wielu kombinacjach dodawania plików.
To bardzo frustrujące, że coś tak prostego ... wywoływanie rzeczy z jakiegoś pliku, który istnieje gdzie indziej na moim komputerze ... wymaga tak dużego wysiłku.
grp
modułu. Właśnie dodałem go do builtins
listy w Preferencje> PyDev> Interpreters> Python> Forced Builtins i nadal otrzymuję autouzupełnianie dla tego modułu