幾天後,我一直坐在這個小問題上,我不知道我是否全錯或者錯過了某些東西。Python字符串和列表
的目的:從句子中的每個字 - 查找第一個元音,從字元音後刪除字母和3
乘其餘字母的例子:如果我有句子:「Hello World」的想要的輸出應該是「HeHeHe WoWoWo」。
我的代碼:
def bebis(inrad):
utrad = ""
inrad = inrad.split()
for tkn in inrad:
for tkn1 in tkn: #Eftersom tkn ar ordlista nu.
if tkn1 in vokaler:
count = len(tkn1)
utrad += tkn1
elif tkn1 in konsonanter:
utrad += tkn1
return utrad[:count+1]*3
print("Bebisspraket:",bebis(inrad))
我的想法:我採用分體式分裂句成詞的列表()。然後我使用兩個for循環,一個應該貫穿每個單詞,另一個應該貫穿每個單詞的每個字母。如果它找到一個元音,請計算它的位置,然後將這些字母返回到單詞的第一個元音。
我的問題:輸出只給了我一個句子中的第一個WORD,並從那裏打破。所以,「Hello World」產生「HeHeHe」讓我感到非常沮喪。爲什麼它不通過句子的其餘部分?
Nitpicky:用're.compile'編譯正則表達式並重用編譯後的正則表達式可能是一個好主意。 –