2010-11-04 65 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