Python 加入“,”&引用;从后面打3个回合后

Python 加入“,”&引用;从后面打3个回合后,python,range,python-2.5,Python,Range,Python 2.5,我只是试着在每3个字符之间显示一个“,” 我试了一下: players = ','.join([player[i:i+3] for i in range(0, len(player), 3)]) rankedplayers = ','.join([ranked[i:i+3] for i in range(0, len(ranked), 3)]) points = ','.join([totalpoints[i:i+3] for i in range(0, len(totalpoints), 3)

我只是试着在每3个字符之间显示一个“,”

我试了一下:

players = ','.join([player[i:i+3] for i in range(0, len(player), 3)])
rankedplayers = ','.join([ranked[i:i+3] for i in range(0, len(ranked), 3)])
points = ','.join([totalpoints[i:i+3] for i in range(0, len(totalpoints), 3)])
但它只从左到右开始,我怎么能从后面从右到左开始呢

编辑:

比如说

player = 9502
ranked = 2040
totalpoints = 12390
其结果是:

player 950,2
ranked 204,0
totalpoints = 123,90
应该是:

player = 9,502
ranked = 2,040
totalpoints = 12,390

这个
regex
正好满足您的需要:

(/(\d)(?=(?:\d{3})+$)/g,$1')


最好使用
replace
方法。

您可以从另一侧反转范围,如下所示:

player = ','.join([player[i:i+3] for i in reversed(range(0, len(player), 3))]) 
但对于使用逗号分组数字,您真正想要做的是:

player = "{:,}".format(int(player)) 

你能给我们一些示例输入和预期输出吗?@MartijnPieters编辑!Thanksi在这里提出了一种方法——如果您愿意,您可以根据自己的代码调整它@埃兰的答案更好:)