我试图创建一个简单的函数来重新格式化列表中的项目,然后打印它们
这对于一个列表来说非常简单:
my_list = [1/3,7/11,2/5] #generate list of floats
formatted_list = ['%.2f' % elem for elem in my_list] #format to 2 d.p
print(formatted_list) #print re-formatted list
但是我有一个嵌套列表的列表。要遍历其中的每一项,我需要执行类似于this answer的操作。这样我就可以写了
^{pr2}$然而,这种方法的主要缺点是,它不再保留结构(列表中的元组)。在
即:
print(formatted_list)
退货
0.33, 0.25, 0.2, 0.66, 0.5, 0.4, 1.0
#I want (0.33, 0.25, 0.2), (0.66, 0.5, 0.4), 1.0
是否有一种方法可以重新格式化,或者更普遍地迭代任意深度嵌套列表中的项,以返回与原始列表结构相同的列表?
也许一个嵌套的理解帮助
它支持列表/元组/浮点集合的任意嵌套。在
演示:
^{pr2}$也适用于其他类型数字的替代实现:
或者,原始版本可以使用
isinstance(x, numbers.Number)
。在相关问题 更多 >
编程相关推荐