如何阻止程序添加1元素元组的单个字母?

2024-05-19 12:35:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我创建了一个程序,该程序应该接受一个元组输入,将其更改为一个列表,将该列表的元素连接到一个字符串中,然后用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

Tags: 程序元素列表newstringoklistlight
1条回答
网友
1楼 · 发布于 2024-05-19 12:35:52

你认为一个元素元组实际上是一个字符串

>>> type(("darkroom bidarke"))
<type 'str'>

要初始化一个单元素元组,括号中必须有一个尾随逗号,如下所示:

>>> type(("darkroom bidarke",))
<type 'tuple'>

我想一旦你做出这样的改变,你会感到惊喜的。下面是关于元组语法的文档:https://wiki.python.org/moin/TupleSyntax

相关问题 更多 >