2

(Djangoで)小さなスペースで数値を表すいくつかの方法を調べましたが、それらのdjango.contrib.humanize.intwordはうまく機能しますが、たとえば百万ではなくMと言った方がいいです。これが非常に大きな数 (10^15 と 10^18 はどちらも Q で始まる) では機能しないことはわかっています。

基本的に、K、M、B、T の 4 つの異なる単位名が必要です。数字で多くの構成を許可するパッケージはありますか?

私が持っているものは機能しますが、私が望む方法ではないため、コードを投稿していません。これは、私が望んでいる数値を取得するためのより良い方法があるかどうかを確認するための質問です。

4

1 に答える 1

2

ローカル マシンで humanize.intword のコードを編集できるはずです。これを行う場合、コードのコピーを作成して名前を変更します。必要に応じて調整し、名前を変更したバージョンを呼び出します。ソースはあなたのマシンにあるはずですhumanize.intword

だから(オリジナル)のようなもの

(6, lambda number: (
    ungettext('%(value).1f million', '%(value).1f million', number),
    ungettext('%(value)s million', '%(value)s million', number),
)),

必要な表現に変更

于 2014-06-10T16:25:51.687 に答える