Python 强制列表中的数字保留两位小数

Python 强制列表中的数字保留两位小数,python,list,formatting,decimal,Python,List,Formatting,Decimal,我有一个从GIS文件(.shp)读取的数字数据列表: dataList=[4.98,5.09,5.23,5.35,5.4,5.59,…] 我正在寻找一种方法,强制此列表中的数字显示为小数点后两位,输出如下: dataList=[4.98,5.09,5.23,5.35,5.40,5.59,…] 主要问题是,我在一个单独的地图文档中以循环方式显示每个项目,其中包含以下内容: TextElement11.text=dataList[count]不支持我在别处找到的“{.2f}”或.format(5)解

我有一个从GIS文件(.shp)读取的数字数据列表:

dataList=[4.98,5.09,5.23,5.35,5.4,5.59,…]

我正在寻找一种方法,强制此列表中的数字显示为小数点后两位,输出如下:

dataList=[4.98,5.09,5.23,5.35,5.40,5.59,…]

主要问题是,我在一个单独的地图文档中以循环方式显示每个项目,其中包含以下内容:
TextElement11.text=dataList[count]
不支持我在别处找到的
“{.2f}”或
.format(5)
解决方案

此列表中的项目仅用于显示目的,因此解决方案是否需要转换(例如转换为字符串)并不重要


我正在使用Python 2.7。

遍历数据列表并将每个值转换为格式化字符串:

new_datalist = ["{:.2f}".format(value) for value in dataList]

最具Python风格的方法是使用
map()
lambda
函数

map(lambda x: "{:.2f}".format(x), dataList)

谢谢最初我确实尝试过这个方法,但我认为我使用了相同的列表,例如,
dataList=[“{.2f}”.format(value)for value in dataList]
,这导致了错误。我还不配给你一个+1,所以我的感激之情现在就到此为止。