我正在設計一個程序,通過單詞列表來查看並計算有多少單詞只有字母p,y,t,h,o和n。搜索使用某些字母的單詞的程序
到目前爲止,我的代碼是:
def find_python(string, python):
"""searches for the letters 'python' in the word."""
for eachLetter in python:
if eachLetter not in string:
return False
return True
def main():
python = 'python'
how_many = 0
try:
fin = open('words.txt')#open the file
except:
print("No, no, file no here") #if file is not found
for eachLine in fin:
string = eachLine
find_python(string, python)
if find_python(string, python) == True:
how_many = how_many + 1#increment count if word found
print how_many#print out count
fin.close()#close the file
if __name__ == '__main__':
main()
然而,我的代碼將返回的單詞數不正確,例如,它會返回單詞「xylophonist」如果我把打印語句吧因爲它有Python中的字母。我該怎麼做纔會拒絕任何禁止發信的詞?
我想說,如果函數的目的是搜索字母「python」,那麼應該在函數內部定義它,而不是傳遞一個'python'變量。 – Interrobang 2013-02-09 04:29:47