Python - printing out list separated with comma
我正在编写一段代码,该代码将输出用逗号分隔的项目列表。使用for循环生成列表。我使用
1 2 | for x in range(5): print(x, end=",") |
问题是,我不知道如何去掉列表中最后一个条目添加的最后一个逗号。它输出:
1 | 0,1,2,3,4, |
号
如何删除结尾","?
把
你已经准备好打印声明了。
不需要循环,print有一个
1 2 | >>> print(*range(5), sep=",") 0, 1, 2, 3, 4 |
。一个小小的解释
1 2 | >>> print("hello","world") hello world |
更改
1 2 | >>> print("hello","world", sep=" cruel") hello cruel world |
。
每个参数都用
1 2 | >>> print(["hello","world"], sep=" cruel") ['hello', 'world'] |
。
但是,如果您将星号放在可ITerable前面,这会将其分解为单独的参数,并允许预期使用
1 2 3 4 5 | >>> print(*["hello","world"], sep=" cruel") hello cruel world >>> print(*range(5), sep="---") 0---1---2---3---4 |
以
使用给定分隔符将ITerable连接到字符串中的另一种方法是使用分隔符字符串的
1 2 | >>>print(" cruel".join(["hello","world"])) hello cruel world |
。
这有点笨拙,因为它需要将非字符串元素显式转换为字符串。
1 2 | >>>print(",".join([str(i) for i in range(5)])) 0,1,2,3,4 |
蛮力-非Python
您建议的方法是使用一个循环连接一个字符串,并在此过程中添加逗号。当然,这会产生正确的结果,但工作要困难得多。
1 2 3 4 5 6 7 8 | >>>iterable = range(5) >>>result ="" >>>for item, i in enumerate(iterable): >>> result = result + str(item) >>> if i > len(iterable) - 1: >>> result = result +"," >>>print(result) 0,1,2,3,4 |
。
您可以使用
1 | print(','.join([str(x) for x in range(5)])) |
演示-
1 2 | >>> print(','.join([str(x) for x in range(5)])) 0,1,2,3,4 |
号
我使用上面的列表理解,因为当与
为此,您可以使用
1 2 | In [1]: print ','.join(map(str,range(5))) 0,1,2,3,4 |
我们需要先将