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