如何删除pythonlis中不需要的逗号

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

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

我在做一个python初学者手册上的练习。我坚持的项目如下:“编写一个函数,该函数接受一个值列表作为参数,并返回一个字符串,其中所有项用逗号和空格隔开。您的函数应该能够处理传递给它的任何列表值”

这是我的代码:

def passInList(spam):
       for x in range(len(spam)):
           z = spam[x] + ', ' 
           print(z,end= ' ')

spam=['apples', 'bananas', 'tofu', 'and cats']
passInList(spam)

预期产量为“苹果、香蕉、豆腐和猫”。在

我的输出是-“苹果、香蕉、豆腐和猫”

我现在的问题是,我似乎无法摆脱“猫”结尾的逗号。在

谢谢你的建议。在


Tags: 项目函数字符串苹果列表参数手册spam
3条回答

使用join方法:

spam=['apples', 'bananas', 'tofu', 'and cats']
print(', '.join(spam))

正如人们在这里发布的,join已经存在。但是,如果练习的目的是了解如何实现join,那么有一种可能:

def passInList(spam):
    s = spam[0]
    for word in spam[1:]:
        s += ', ' + word
    return s

也就是说,取第一个单词,然后用逗号连接下一个单词。在

实现这一点的另一个选择是使用函数编程,即在本例中,reduce函数:

^{pr2}$

每当使用一个聚合事物的方案时,比如前面的实现中的s += ...,就会想到reduce。在

您可以将代码缩减为使用join,在这里给代码分隔符和要连接到一起的列表。在

def passInList(spam):
       print(', '.join(spam))

spam=['apples', 'bananas', 'tofu', 'and cats']
passInList(spam)

相关问题 更多 >