在python中用多个浮点值格式化字符串

2024-05-19 13:08:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图截断同一字符串中包含的一些浮点值,但我不太确定如何继续。在

目前我正在使用Pythonxml.dom.minidom使用节点.toxml(). 我有这样的东西:

1.471392 0.740274 0.659904 -0.560021 1.312128 -0.697930 1.557193 5.156295 2.279541 -0.760170 -0.778676 
-4.882018 0.872503 0.553950 4.468880 -0.793693 0.572676 0.521594 -1.535048 -0.736827 -3.014793 12.288257   
5.243127 -0.850610 2.382368 2.183009 0.733634 0.669893 -0.658211 -1.229626 6.780756 -0.608808 -0.914032 

但我希望将每个浮点值截断为小数点后2位,因此第一个值将如下所示: 在

^{pr2}$

我没有包括其他值。在

我想在整个文档中循环并使用一些函数来循环每个字符串是一种方法?以前有没有人做过这件事,或者找到一个我完全不知道的简单解决办法?在

非常感谢, C


Tags: 方法函数字符串文档节点dom浮点小数点
3条回答
>>> '%.2f' % (1.471392,)
'1.47'

这里有一条直线:

" ".join([str(round(float(i),2)) for i in data.split(' ')])

其中数据包含浮动字符串。可能不是最有效率的,但它确实起到了作用。在

def round_2(f):
    return round(f, 2)

>>> map(round_2, [1.3234254, 2.33521453])
[1.32, 2.34]

函数式编程太棒了!在

顺便说一下,我不太清楚您是在字符串上操作,还是在浮点数组上操作,但是如果是前者,请先将字符串拆分为一个float数组。在

相关问题 更多 >