分享
三行代码  ›  专栏  ›  技术社区  ›  Ankur Paranjpe

在python中将价格格式从点(.)改为逗号(,)

  •  1
  • Ankur Paranjpe  · 技术社区  · 2 天前

    使用python的txt文件从pandas文件中创建一个csv文件。 这个txt文件有一个点格式的价格,如23.45

    1. 将特定列的(.)替换为(,) ->结果:整数消失,新单元格的值为“无”。
    2. 尝试使用Lambda函数格式化。结果还是没有达到。

    下面是我用过的方法。

     1. df['price'] = df['price'].replace('.',',', inplace= True)
     2. locale.setlocale(locale.LC_MONETARY, 'de_DE')
       df['price'] = df['price'].apply(locale.currency)
     3. df['price'] = df['price'].apply(lambda y: '{:.,2f}'.format(y))
    

    1 回复  |  直到 2 天前
        1
  •  1
  •   sharath natraj    2 天前

    试试这个,你差点就搞定了。只是要把 float str str.replace .

    df['price'] = df['price'].astype(str).str.replace('.',',')
    

    输入:

       price
    0  20.12
    1  10.12
    2  34.12
    3  35.43
    

       price
    0  20,12
    1  10,12
    2  34,12
    3  35,43