2015-03-19 38 views
1

我的代碼:水珠返回一個空列表在Python

hi = glob.glob("hi/FEC[0-9][0-9][0-9][0-9][0-9]_[0-9].seq") 

我使用的是水珠模塊,我試圖讓所有的路徑文件名,但所有這返回一個空列表。我不知道爲什麼它一直這樣做。它在我的代碼被意外刪除之前有效。

[] 

無論文件是否在那裏,它仍然給我一個空的列表。

更新: 所以下面的文件我都

FEC00001_1.seq

FEC00002_1.seq

FEC00002_2.seq

等..

更新2 : 所以我只是意識到它可能必須做一些錯誤的文件夾像你們一樣sa ID。

因爲現在,我的劇本是在「文件夾1」和所有的文件我試圖訪問是在「文件夾2」

/mainfolder/folder1/script.py

/mainfolder /資料夾/ 文件即時試圖訪問

+0

請讓我們知道您嘗試匹配哪種類型的文件名,以便我們驗證您的正則表達式語法。 – 2015-03-19 04:09:51

+0

即使正則表達式語法錯誤,它不會給我任何錯誤,它仍然給我一個空的列表 – David 2015-03-19 04:15:22

+1

它返回空列表的原因是因爲沒有任何文件名與您的模式匹配。所以請檢查您的文件路徑。 – 2015-03-19 04:31:33

回答

0

glob.glob是在演唱會使用os.listdir()fnmatch.fnmatch()功能來完成。所以在正確的地方搜索是很重要的。 考慮您的文件層次: -

/mainfolder/folder1/script.py 
/mainfolder/folder2/files im trying to access 

嘗試以下操作: -

HI = glob.glob(」 ../文件夾2/FEC [0-9] [0-9] [0-9 ] [0-9] [0-9] _ [0-9] .seq「)

+0

非常感謝!這是一個文件夾層次結構問題 – David 2015-03-19 09:15:15

+0

@David如果能夠解決您的問題,您是否可以贊成並接受答案?將幫助我們兩個人一些回購。 :) – 2015-03-19 09:55:41