Я ищу способ преобразования чисел в строковый формат, сбросив любые избыточные '.0'
Входные данные представляют собой смесь поплавков и строк. Желаемый вывод:
0 → '0'
0.0 → '0'
0,1 → '0,1'
1.0 → '1'
Я придумал следующее выражение генератора, но мне интересно, есть ли более быстрый способ:
(str(i).rstrip('.0') if i else '0' for i in lst)
Проверка правды заключается в том, чтобы предотвратить превращение 0 в пустую строку.
EDIT: более или менее приемлемое решение, которое у меня есть сейчас:
('%d'%i if i == int(i) else '%s'%i for i in lst)
Кажется странным, что нет простого способа справиться с этим (довольно простым) случаем в python.