Pythonで4桁区切りにする方法

Pocket

Pythonで数値をカンマ3桁区切りにするには次のようにします。

src = 123456789
result = "{:,}".format(src)
print(result) # 123,456,789

{:,}
でなく
{:_}
とするとアンダースコア区切りになります。
記号は変えられますが桁数を変える方法が見つかりませんでした。

次のようにすると3桁以外で区切ることができます。
一度逆順にして桁数ごとにカンマを入れ元の順に戻します。

import re
def comma(src, digit):
  dst = str(src)
  dst = "".join(list(reversed(dst)))
  dst = re.sub(r"(\d{"+str(digit)+"})", r"\1,", dst)
  dst = "".join(list(reversed(dst)))
  dst = re.sub(r"^,", "", dst)
  return dst

src = 123456789
digit = 4
result = comma(src, digit)
print(result) # 1,2345,6789

[ 2022年3月13日 | カテゴリー: Python | タグ: ]

« | »

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

送信してください。


タグ

カテゴリー

最近の投稿

最近のコメント

固定ページ

アーカイブ

stabucky

写真

メタ情報