【问题标题】:How do I add comma to numbers and align those by the decimal points如何在数字中添加逗号并按小数点对齐
【发布时间】:2022-11-18 03:05:58
【问题描述】:

我能够按小数点对齐数字,但我不知道如何添加逗号。我知道如何使用 format() 添加逗号,但不知道如何对齐和添加逗号。我需要按小数点对齐并且也有逗号。

print(f"{i + 1}\t\t\t{salary :11.2f}")

这是 for 循环中的一行。

【问题讨论】:

    标签: python-3.x


    【解决方案1】:

    如果我理解正确的话,这对我有用。 将冒号后的 3 个选项卡替换为“>25”。 “>”向左添加空格,文本将向右对齐。 25 是您允许的字符空间数。 25 是我为这个例子选择的任意数字,它可以是任何有足够空间来容纳你的字符串和所需空间的东西(比如,你拥有的最长数字加上你的制表符空格)。 在“>25”后添加逗号以打印带逗号的数字。

    salaries = [10000, 200000, 3000000, 40000000]
    
    for i in range(len(salaries)):
        salary = salaries[i]
        print_string = f"{i + 1}{salary :>25,.2f}"
        print(print_string)
    

    【讨论】:

      【解决方案2】:

      以下解决方案需要管理权限。

      第 1 步:安装德语语言环境。

      1.1 取消注释/etc/locale.gen 中的德语语言环境行。

      可以使用任何文本编辑器。 编辑后的结果应该如下所示:

      grep ^de /etc/locale.gen
      de_DE.UTF-8 UTF-8
      

      1.2 安装德语语言环境:

      sudo locale-gen en_US.UTF-8 de_DE.UTF-8
      sudo update-locale LANG=en_US.UTF-8 LC_ALL=en_US.UTF-8
      

      第2步。 使用德语语言环境。 例子:

      #!/usr/bin/python3.9
      import locale
      locale.setlocale(locale.LC_ALL, 'de_DE.UTF-8') 
      for i in range(0,10):
          salary=10000*i+1000
          print('{0:2d}			'.format(i+1),end='')
          print(locale.format_string('%11.2f', salary))
      

      输出:

       1                          1000,00
       2                         11000,00
       3                         21000,00
       4                         31000,00
       5                         41000,00
       6                         51000,00
       7                         61000,00
       8                         71000,00
       9                         81000,00
      10                         91000,00
      

      我的环境:

      uname -a ; lsb_release -a |& grep -v ^No
      Linux LAPTOP-YYYYYYYY 4.4.0-19041-Microsoft #1237-Microsoft Sat Sep 11 14:32:00 PST 2021 x86_64 x86_64 x86_64 GNU/Linux
      Distributor ID: Ubuntu
      Description:    Ubuntu 20.04.3 LTS
      Release:        20.04
      Codename:       focal
      

      【讨论】:

        猜你喜欢
        • 2016-11-01
        • 1970-01-01
        • 1970-01-01
        • 2022-01-21
        • 1970-01-01
        • 1970-01-01
        • 2016-08-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多