当前位置:  开发笔记 > 编程语言 > 正文

如何为新的python格式选项设置变量精度

如何解决《如何为新的python格式选项设置变量精度》经验,为你挑选了1个好方法。

我喜欢包含变量的字符串的新格式选项,但我希望有一个变量来设置我的脚本的精度,我不知道如何做到这一点.让我举一个小例子:

a = 1.23456789
out_str = 'a = {0:.3f}'.format(a)
print(out_str)

现在这是我想要在伪代码中做的事情:

a = 1.23456789
some_precision = 5
out_str = 'a = {0:.(some_precision)f}'.format(a)
print(out_str)

但我不确定,如果可能的话,可能是语法的样子.



1> Martijn Piet..:

您可以嵌套占位符,其中嵌套占位符可以在格式规范中的任何位置使用:

out_str = 'a = {0:.{some_precision}f}'.format(a, some_precision=some_precision)

我在那里使用了一个命名的占位符,但你也可以使用带编号的插槽:

out_str = 'a = {0:.{1}f}'.format(a, some_precision)

也支持嵌套插槽的自动编号(Python 2.7及更高版本); 编号仍然从左到右进行:

out_str = 'a = {0:.{}f}'.format(a, some_precision)

首先填充嵌套槽; 当前实现允许您将占位符嵌套到最多2个级别,因此在占位符的占位符中使用占位符不起作用:

>>> '{:.{}f}'.format(1.234, 2)
'1.23'
>>> '{:.{:{}}f}'.format(1.234, 2, 'd')
Traceback (most recent call last):
  File "", line 1, in 
ValueError: Max string recursion exceeded

您也不能在字段名称中使用占位符(因此没有动态分配值到插槽).

推荐阅读
殉情放开那只小兔子
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有