0
我有以下功能,第二個功能count_forbid(a)
只能工作1次。在這個例子中,它計算了不包含字母'c'
的單詞的正確值,但是對於y
它返回零。因此,這意味着代碼只能做正確的第一次和所有其他的時間就返回零:功能僅在第一次調用時才正常工作
import string
fin = open('words.txt')
def forbid_or_not(word,forb):
for letter in word:
if letter in forb:
return False
return True
def count_forbid(a):
count = 0
for line in fin:
word1 = line.strip()
if forbid_or_not(word1,a):
count += 1
return count
x = count_forbid('c')
y = count_forbid('d')
而不是使用情況管理器,你也只是「手動」開放,並可以關閉該文件。 – syntonym
當然,但這依賴於您保持警惕並始終記得關閉它的事實。這就是爲什麼上下文管理者是一個非常好的構造,他們爲你做這件事,讓你擔心更重要的事情:-)。 –
哇,超級有效,非常感謝。 –