删除浮点数末尾的'.0'
- 论坛
- 删除浮点数末尾的'.0'
7 浏览
删除浮点数末尾的'.0'
我正在寻找一种将数字转换为字符串格式的方法,去除任何多余的".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变为空字符串。
编辑:我现在有一个或多或少可以接受的解决方案:
('%d'%i if i == int(i) else '%s'%i for i in lst)
只是看起来在Python中没有一种优雅的方式来处理这个(相当直观的)情况。