def checkCache(cachedText):
for line in open("cache"):
if cachedText + ":" in line:
print line
open("cache").close()
else:
requestDefinition(cachedText)
此代码搜索的特定字符串(cachedText +“:”)的文件(缓存)的每一行。在文件中搜索字符串,并在未找到字符串时执行函数;在python
如果没有找到特定字符串,则整个文件是指调用另一个函数(requestNewDefinition(cachedText))之内。
但是我上面的代码为每个不匹配的行执行函数。
一个如何搜索字符串(cachedText +“:”)的文件,如果文件在字符串中没有找到任何地方,执行其他功能?
例缓存:
hello:world
foo:bar
必须将打开的文件分配给一个变量?它是否更快 - 或只是更好的做法。 – torger 2009-12-08 08:35:31
for循环中的else为什么很棘手? – torger 2009-12-08 08:42:04
@nazarius:它允许跟踪打开的网页以关闭它。如果你经常调用这个函数,如果你不想耗尽系统资源,你真的应该关闭这个文件。 – 2009-12-08 08:44:17