Python:以科学计数法打印数字列表

问题描述 投票:2回答:3

背景:

local_print = [0.03, 535, 7]

可以使用以下符号以科学计数法打印

for x in local_print:
    print('{:.3e}'.format(x))

没有科学记数法,可以如下打印:

print(*local_print, sep='\t')

问题

有没有办法将这两种打印方法结合起来?我想使用

进行打印
print(*local_print, sep='\t')

科学格式。

python python-3.x list printing scientific-notation
3个回答
2
投票

您也可以使用列表理解

local_print = [0.03, 535, 7]
print('\t'.join(['{:.3e}'.format(x) for x in local_print]))

1
投票

通常的方法是使用生成器表达式:

 print(*('{:.3e}'.format(x) for x in local_print), sep='\t')

1
投票

如果您想采用更为外行的方式,只需从其他列表中进行打印即可。

scientific = []
for x in local_print:
    scientific.append('{:.3e}'.format(x))
print(*scientific, sep='\t')

输出:

3.000e-02      5.350e+02      7.000e+00
© www.soinside.com 2019 - 2024. All rights reserved.