open () nie może znaleźć podanej ścieżki do pliku względem PYTHONPATH
Zrobiłemexport PYTHONPATH=$PYTHONPATH:/home/User/folder/test
. Potem uruchomiłem python, kiedy byłem w środku/home/User/
i sprawdziłemsys.path
- to było poprawne.
>>> import sys
>>> sys.path
['', '/usr/local/lib/python2.7/dist-packages/gitosis-0.2-py2.7.egg',
'/home/User', '/home/User/folder/test','/usr/lib/python2.7',
'/usr/lib/python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk',
'/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload',
'/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages']
Potem próbowałem otworzyć plik/home/User/folder/test/pics/text/text.txt
lubię to:
>>>file = open('pics/text/text.txt','r')
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
IOError: [Errno 2] No such file or directory:
Jak widać, pierwsza połowa ścieżki do pliku jest w$PYTHONPATH
, a druga połowa jest podana jako argument doopen()
funkcjonować. Dlaczego to nie działa? Co powinienem zmienić?
Kiedy uruchomiłem python z/home/User/folder/test
(wyeksportowana ścieżka) i próbowałem otworzyć plik - zadziałało.