我正在自学python,正在做一个练习,该问题的解决方案已发布在此线程中。谁能将这段代码的意思翻译成英文?当我了解了if语句时,我再也没有遇到过这种语法。
consonants = 'bcdfghjklmnpqrstvwxz'
return ''.join(l + 'o' + l if l in consonants else l for l in s)
这是一段较长的代码,作为生成器编写。这就是它的样子,更加引人注目。
consonants = 'bcdfghjklmnpqrstvwxz'
ls = []
for l in s:
if l in consonants:
ls.append(l + 'o' + l)
else:
ls.append(l)
return ''.join(ls)
它遍历s
并检查是否l
在字符串中consonants
。如果是,它将推l + 'o' + l
送到列表,如果不是,它将直接推送到l
。
然后,使用将该结果连接到字符串中''.join
并返回。
更准确地(作为生成器):
consonants = 'bcdfghjklmnpqrstvwxz'
def gencons(s):
for l in s:
if l in consonants:
yield l + 'o' + l
else:
yield l
return ''.join(gencons(s))
gencons
我给生成器函数的名字是哪里呢?
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句