open () não pode encontrar o arquivo dado caminho relativo ao PYTHONPATH
eu fizexport PYTHONPATH=$PYTHONPATH:/home/User/folder/test
. Então eu corri python quando eu estava em/home/User/
e verificadosys.path
- estava correto.
>>> 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']
Então eu tentei abrir um arquivo/home/User/folder/test/pics/text/text.txt
como isso:
>>>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:
Como você pode ver, a primeira metade do caminho para o arquivo está em$PYTHONPATH
, e segundo semestre é dado como um argumento paraopen()
função. Por que isso não funciona? O que devo mudar?
Quando eu corri python de/home/User/folder/test
(caminho exportado) e tentou abrir o arquivo - funcionou.