我正在为即将到来的实际编程测试练习,所以一直在网上浏览示例并遇到了这个
“编写一个函数 translate() 将文本翻译成“rövarspråket”(瑞典语“强盗的语言”)。也就是说,将每个辅音加倍并在其间放置一个“o”。例如,translate( “这很有趣”)应该返回字符串“tothohisos isos fofunon”。
我不知道为什么,但我为此苦苦挣扎。如此简单,但我却遇到了困难。这是我试过的
def translate(n):
consonant="bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ"
for letters in n:
if letters in consonant:
return (letters+"O"+letters)
else:
return("Vowel")
如果我的编码 super 业余,我很抱歉。只是想学习:/
最佳答案
consonants = set("bcdfghjklmnpqrstvwxyzBCDFGHJKLMNPQRSTVWXYZ")
original_string = "this is fun"
translated = ''.join(map(lambda x: x+"0"+x if x in consonants else x,original_string)
print translated
是我可能会这样做的一种方式......这只是将每个字母映射到 letter+0+letter 如果它是辅音然后加入结果列表
关于python - 将字符串翻译成 "robber' 的语言”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23638949/