如何从输出中删除最后一个逗号
Posted
技术标签:
【中文标题】如何从输出中删除最后一个逗号【英文标题】:How do I remove the last comma from the output 【发布时间】:2021-10-01 05:30:46 【问题描述】:n=3
result=[[1,2,3],[4,5,6],[7,8,9]]
for i in range(n):
for j in range(n):
print(result[i][j],end=',')
print()
输出: 1,2,3, 4,5,6, 7,8,9,
我得到了我想要的输出,但是如何删除最后一个逗号?
【问题讨论】:
您要删除每行的最后一个逗号,还是只删除 9 之后的最后一个逗号? 每行的最后一个逗号。 【参考方案1】:更简单的方法:
result = [[1,2,3],[4,5,6],[7,8,9]]
for r in result:
print(*r, sep=',')
【讨论】:
【参考方案2】:这是一个使用列表理解的简洁解决方案:
result = [[1,2,3],[4,5,6],[7,8,9]]
for r in result:
print(','.join([str(x) for x in r]))
打印出来:
1,2,3
4,5,6
7,8,9
【讨论】:
【参考方案3】:您可以单独打印第一个,然后在循环中,在左侧用逗号打印其余部分:
result=[[1,2,3],[4,5,6],[7,8,9]]
for i in result:
print(i[0], end='')
for j in range(1, len(i)):
print("," + str(i[j]), end='')
print("")
【讨论】:
【参考方案4】:我更喜欢 str.join
的单行代码:
>>> print(*(','.join(map(str, i)) for i in result), sep='\n')
1,2,3
4,5,6
7,8,9
>>>
或者:
>>> '\n'.join([','.join(map(str, i)) for i in result])
1,2,3
4,5,6
7,8,9
>>>
【讨论】:
【参考方案5】:您可以使用Ternary operators
来实现。
n=3
result=[[1,2,3],[4,5,6],[7,8,9]]
for i in range(n):
for j in range(n):
print(result[i][j],end=',' if j %3 < 2 else '\n')
这将打印出来
1,2,3
4,5,6
7,8,9
【讨论】:
以上是关于如何从输出中删除最后一个逗号的主要内容,如果未能解决你的问题,请参考以下文章