如果我有一个3元组的花车,并且我想打印它们格式化,我可以这样做:
print('{:.2f} {:.2f} {:.2f}'.format(*my_tuple))
如果我有一个n元组的浮点数,我可以使用地图并实现相同的格式:
print(*map(lambda x: '{:.2f}'.format(x), my-tuple))
我想知道,如果有一种方法可以更改print
函数本身,以便它已经为浮动执行格式化我想要而无需任何额外的干预。我在文档中找不到任何相关内容。
我想要一个简单的
print(*my-tuple)
,如果元组中的所有术语都不是浮点数,那么它也会起作用。
我在问这个问题,因为看起来我应该能够调整print
,所以我觉得我在这里错过了一些简单的东西。
答案 0 :(得分:1)
为什么不简单地定义自己的?像这样:
(blank)
毕竟你不想改变或重新定义def my_print(data):
print(', '.join('{:.2f}'.format(x) if type(x)==float else str(x) for x in data))
my_print((1.23, 51212., 5.151252, 1.25, 125.1545, .5314451, 5.1251, 5,.125 , 'sdgsdgdsg'))
# prints:
# 1.23, 51212.00, 5.15, 1.25, 125.15, 0.53, 5.13, 5, 0.12, sdgsdgdsg
的工作方式,你不需要......