2010-11-04 37 views
-3

我有一個Python的字符串哈希表。所以,每個條目都是一個字符串。字符串可能以「/」開頭,這意味着它們是文件名。 什麼是一個快速的方式來取得這樣的散列表,並且對於以「/」開頭的每個字符串來驗證文件是否存在? 如果文件不存在,那麼如何驗證python中的散列?

+0

「如果文件不存在,那麼」 ......你可能要編輯您的問題並完成它。 – ThiefMaster 2010-11-04 00:26:19

+3

-1:沒有複製和粘貼整個家庭作業。 – 2010-11-04 00:26:36

+0

我想說給他一些時間來完成他的帖子。 – Skurmedel 2010-11-04 00:31:31

回答

2

找到,如果字符串以斜線開始:

str.startswith('/') 

str[0] == '/' 

要查找某個文件是有效的:

import os.path 
os.path.exists(str) 

您可以使用for語句循環訪問哈希表。全部放在一起(假設潛在的路徑值在哈希表[稱爲Python中的字典):

import os.path 

for val in table.values(): 
    if val.startswith('/') and not os.path.exists(val): 
     print "BAD FILE!!! ", val 
+0

...如果您要操縱文件,請不要忘記TOCTOU:http://en.wikipedia.org/wiki/Time-of-check-to-time-of-use :) – Skurmedel 2010-11-04 00:57:56