すべてのプリントを、私が維持しているライブラリのロギングコールに変換する時が来ています。私はそれをログに記録しようとするとカンマで区切った数字を桁区切り記号として記録する方法は?
>>> n = 4000000
>>> print(f"this bird wouldn't voom if you put {n:,} volts through it!")
this bird wouldn't voom if you put 4,000,000 volts through it!
:印刷のコールの中には、この(簡体字)のように、str.format
を使用している
>>> log.warning("this bird wouldn't voom if you put %d, volts through it!", n)
WARNING:root:this bird wouldn't voom if you put 4000000, volts through it!
が、これは正しく桁区切り記号を指定していないようです。 Pythonのstdlibロギングモジュールが必要とする%-formatting構文を使用するときに、どのように桁区切り記号を指定しますか?
>>> log.warning("this bird wouldn't voom if you put %s volts through it!", format(n, ','))
WARNING:root:this bird wouldn't voom if you put 4,000,000 volts through it!
暗闇の中で撮影する: '' logging.Formatter'](https://docs.python.org/3/library/logging.html#logging.Formatter)で 'style =" {"' –
So 、多分[ここ](https://docs.python.org/3/howto/logging-cookbook.html#use-of-alternative-formatting-styles)が役に立ちます。 –
@ juanpa.arrivillaga私は過去にそれを試してみましたが、それを働かせることはできませんでした。 '{'スタイルはテンプレートフォーマット自体に使用されますが、実際のメッセージのパラメータには使用されません。しかし、私は何かを見逃しているかもしれません - あなたがそれを働かせることができれば、是非答えを加えてください。 – wim