我创建了一个程序,它应该接受一个元组输入,将其更改为一个列表,将该列表的元素连接成一个字符串,然后用light替换任何出现的单词dark。如果元组只有一个元素,则会添加每个字母而不是仅使用元素。我的代码低于预期的结果。
def dark_light(tup):
new_list=list(tup)
single_string=', '.join(new_list)
print(single_string.replace("dark", "light"))
dark_light(("light", "dark", "light", "stop"))#light, light, light, stop
dark_light(("darkness bidarkee", "ok"))# lightness lightee, ok
dark_light(("darkroom bidarke"))#lightroom bilighte
dark_light(("enough", "jokes")) #enough, jokes
答案 0 :(得分:3)
你认为单元组元组实际上是一个字符串。
>>> type(("darkroom bidarke"))
<type 'str'>
要初始化一个元素元组,您的括号中必须有一个尾随逗号,如下所示:
>>> type(("darkroom bidarke",))
<type 'tuple'>
我认为一旦你做出这个改变,你会感到惊喜。以下是有关元组语法的文档:https://wiki.python.org/moin/TupleSyntax