2014-02-24 111 views
0

我正在運行OSX小牛,但自從我購買了Snow Leopard後,此問題一直在進行。完整文件路徑與短OSX

用任何語言編寫腳本時,例如:Python。當我嘗試打開文件時,短的 表單不起作用。

file = open('donkey.jpg') 

而且我得到這個錯誤:

IOError: [Errno 2] No such file or directory: 'donkey.jpg' 

相反,我總是要指定完整路徑。

file = open('/Users/myName/Desktop/donkey.jpg') 

關於爲什麼會發生這種情況以及如何糾正它的任何想法?

+0

在你的例子中,腳本位於'/ Usrs/myName/Desktop /'中嗎? – msvalkon

+0

是的,兩者都駐留在同一個目錄中。另外,除了我的電腦外,其他電腦上也有相同的說明。 @warunsl –

+0

@falsetru PLACEHOLDER –

回答

2

如果指定donkey.png,則表示donkey.jpg文件在當前工作目錄中。 (相對路徑)

確保您在donkey.jpg所在的同一目錄中運行腳本。

如果你想指定的路徑相對於腳本文件,而不是當前工作目錄中使用的圖像文件如下:

import os 

filepath = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'donkey.jpg') 

注意只能在腳本文件使用__file__。 (不在交互模式下)

+0

NameError:name'\ _ \ _ file \ _ \ _ '未定義 – geowar

+0

@geowar,在交互模式下不能使用'__file__'。要使用'__file__',你應該保存文件並運行它。 – falsetru

+0

@geowar,請參閱[我剛錄製的這個截屏視頻](http://asciinema.org/a/7898)。 – falsetru

0

您的open調用沒有模式參數。在這種情況下,它默認以讀模式打開文件。

除非您正在打開(待讀取)的文件位於當前工作目錄中,否則完全預計Python腳本會拋出IOError

+0

@falsetru同意,編輯。 – shaktimaan