no-image

コンマを挿入する python

Pythonの正規表現のgroupの練習

#! python3

import sys,re

if len(sys.argv) < 2:
 print('x * 1000を計算します')
 sys.exit()
 
goukei= re.compile(r'((\d{3})?(\d{3})(\d{3})(\..*))')
hoge = 1000 * float(sys.argv[1])
for groups in goukei.findall(str(hoge)):
 foo = ','.join([groups[1], groups[2], groups[3]])
 foo += groups[4]
 
print(foo)

結構どうでもいいコードだが、未完成 ある値に対して*1000をしてそこにコンマを挿入したかった。

桁が足りないときに左端にもコンマがついてしまう。

プログラムはいくらでもあるが、人が作ったコードは解読に時間がかかってしまう。

3桁ずつグループにわけてから、forループで回してグループをコンマでjoinした。小数点以下はあとから足している。