python - python:格式化具有最大小数位数的浮点字符串
问题描述
我需要的类似于%.2f
但删除任何0
或.
结尾。
下面是一个示例,左侧是浮点数,右侧是所需的格式。
4525.0014436 -> '4525'
4525.0091 -> '4525.01'
4525.1036 -> '4525.1'
4525.163465 -> '4525.16'
4525.998 -> '4526'
有没有办法让这个在python中格式化?还是有必要通过算法来做到这一点?
解决方案
发现:格式化后只需使用 rstrip('0.')%.2f
例如:
>>> ("%10.2f" % 4567.001).rstrip('0.')
' 4567'
>>> ("%10.2f" % 4567.009).rstrip('0.')
' 4567.01'
>>> ("%10.2f" % 4567.1004).rstrip('0.')
' 4567.1'
推荐阅读
- android - 如何在缺口设备中使 exoplayer 全屏显示
- angular - 角度路由参数问题
- javascript - 值高于 var 的猫鼬 findOne()
- c# - 循环遍历 IEnumerable 并将它们传递给具有多个 if/else 条件的模型
- python - 在heroku上部署Django应用程序时没有名为'config.settings'的模块(仍然没有从其他问题得到答案)
- flutter - 当我在flutter中使用sharedpreference离线保存对象列表时,它会自动转换为字符串......输出如下
- git - Windows 上 git-bash 的奇怪 git 行为
- go - Golang::=语法左侧的预期标识符
- html - 如何更改 svg 图标的笔画宽度?
- excel - Excel 连接函数