我正在嘗試編寫一個程序來讀取文本文檔並輸出文檔中最長的單詞。如果有多個最長的單詞(即全部長度相等),那麼我需要按照它們出現的相同順序輸出它們。例如,如果最長的詞是狗和貓你的代碼應該產生:如何從文本文檔中選擇相等的最大長度的文字
狗貓
我無法找出如何選擇等於最大長度的衆多詞,並打印出來。這是據我已經得到了,我只是努力想如何選擇具有相等的最大長度的所有字:
打開文件進行讀取
fh = open('poem.txt', 'r')
longestlist = []
longestword = ''
for line in fh:
words = (line.strip().split(' '))
for word in words:
word = ''.join(c for c in word if c.isalpha())
if len(word) > (longestword):
longest.append(word)
for i in longestlist:
print i
不應該'longestword'是一個整數?而且每次找到更長的單詞時都需要更新它。 – afsafzal
想想你的支票:如果長度相等,將這個詞添加到最長的列表。如果單詞的長度大於最長單詞的長度,那麼你有一個新的最長的單詞,所以你應該擦除你的舊單子並創建一個包含新單詞的新單子。 –