2017-09-14 64 views
1

我正在使用python3(特定於python3.6.1)進行編碼。當路徑是使用Python3的命令行參數時,無法讀取使用熊貓的csv文件名稱

args = sys.argv 
    filename = args[1] 
    data = pd.read_csv(filename) 

但是它說這個文件即使存在也不存在。我看到文件名編碼爲字符串,前面帶有b前綴。

我也試過下面的代碼。

filename = StringIO(filename) 
    data = pd.read_csv(filename) 

現在,沒有錯誤。但是,我看到一個空的數據框,其中有列作爲文件的名稱。

我已經使用該命令運行該程序。

python id3.py /path/to/filename.csv 

可能有人能幫我解決這個或可能有人點我的鏈接,找到了答案。

編輯: - 路徑有問題。 csv文件的路徑有幾個空格。因此,Ubuntu將其替換爲'%20',因爲我猜python會將它讀作字節串。因此,它無法讀取csv文件。

當我刪除路徑中的空間。 python pandas能夠讀取csv文件。

感謝

+0

你可以把輸入放到問題 – GiantsLoveDeathMetal

+0

什麼'print(filename)'輸出? – GiantsLoveDeathMetal

+0

打印命令給出/path/to/filename.csv但是,它顯示的錯誤是FileNotFounderror:b'/ path/to/filename.csv'不存在。 – megamind

回答

0

試試「文件/路徑/與spaces.csv」

所以使用引號當例如運行腳本

python script.py "file/path/with spaces.csv" 
相關問題