def word_count (x: str) -> str:
characters = len(x)
word = len(x.split())
average = sum(len(x) for x in word)/len(word)
print('Characters: ' + str(char) + '\n' + 'Words: ' + str(word) + '\n' + 'Avg word length: ' + str(avg) + '\n')
此代碼工作正常與普通字符串,但對於像字符串:發現平均字長字符串
'***The ?! quick brown cat: leaps over the sad boy.'
如何修改代碼,以便像「***」的數字和「?!」沒有在代碼中考慮?上面這句話的平均單詞數應該是3.888889,但是我的代碼給了我另一個數字。
您必須更精確地確定要過濾的內容。但基本思想是從x.split()中刪除被拒絕的「單詞」,並使用該簡化列表。 –
如果問題是從某些詞語中刪除不需要的字符,則必須將其拼出來。 –
使用're'過濾掉你不想包含的內容將是一個相對簡單的方法來達到這個目的(即雙空格,特殊字符等) –