如何使用Python 3.0 format函数将小数点舍入到特定的小数位数?

推荐答案

下面是一个典型的、有用的例子:

>>> n = 4
>>> p = math.pi
>>> '{0:.{1}f}'.format(p, n)
'3.1416'

嵌套{1}接受第二个参数,即当前值n,并按指定应用它(此处,应用于格式的"精度"部分——小数点后的位数),然后应用外部结果{0:.4f}.当然,如果您愿意,您可以硬编码4(或任何数字),但关键是,您不需要have

更好的是

>>> '{number:.{digits}f}'.format(number=p, digits=n)
'3.1416'

...您可以 Select 使用shiny 清晰的参数names,将相应的值作为keyword(也称为"named")个参数传递给format,而不是像上面的0和1这样模糊的"参数数"——正如您所看到的那样,so的可读性要高得多!!!

Python-3.x相关问答推荐

为什么我必须在绘制椭圆时代码等于两次?''

是什么原因导致Pandas=2.1.4和Pandas=1.4.2之间Pandas DataFrame中从Float64到int32的连续列转换方式不同

如何在matplotlib中显示次要刻度标签

PythonPandas READ_EXCEL空数据帧

错误:无法为 pyconcorde 构建轮子,这是安装基于 pyproject.toml 的项目所必需的

SQL Server 2022和Python3.10脚本错误

TypeError: issubclass() arg 1 在 Flask 中导入 langchain 时必须是一个类

如何从字典中打印特定键值?

使用 distutils 分发预编译的 python 扩展模块

使用自定义比较删除重复项

if 语句中冒号的语法错误

Python中调用者函数的访问变量

ImportError:无法在 PyQt5 中导入名称QStringList

从 IPython 重新加载 Python 扩展模块

变量类型注解NameError不一致

Python 3 中的连接列表

异常被忽略是什么类型的消息?

如何修复:cx_Oracle.DatabaseError:DPI-1047:找不到 64 位 Oracle 客户端库 - Python

为什么某些代码在 Python2 中是确定性的,而在 Python 3 中是非确定性的?

Django 教程 unicode 不起作用