Числовой формат Python - PullRequest
       5

Числовой формат Python

0 голосов
/ 05 октября 2018

Я очень новичок в Python.У меня есть DataFrame со столбцом под названием количество.Я могу прочитать значение, используя df['QTY'].

Мне нужно значение формата, как показано ниже

0.00 -> 0

12.0 -> 12

100.00 -> 100

12.00 -> 12

12 -> 12

123.34 -> 123.34

Я пробовал, и все берут примеры xx.yy и показывают форматирование, но у меня будет комбинация xx.00, xx.yyи только xx.

Мой вопрос отличается от Форматирование поплавков в Python без лишних нулей

Там он конвертирует 3.140 в 3.14.В моем случае 3.140 должен быть преобразован в 3.140, а 3.00 - в 3

РЕШЕНИЕ:

Я закончил как показано ниже

for row in df.iterrows():
if row['QTY'].is_integer():
   df['QTY'] = "{:,}".format(int(row['QTY']))
else:
   df['QTY'] = "{:,}".format(float(row['QTY']))  

Теперь мойУ df ['QTY'] есть все значения в хорошо отформатированном виде.

1 Ответ

0 голосов
/ 06 октября 2018
>>> b = 123.34
>>> print (("%%12.%df" % (0 if b == round(b) else 2)) % b).strip()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...