在Python3.4中格式化列表的结果
我试图通过格式化print()函数,使列表计算的结果以有序的方式显示。我从这个站点和Python文档中尝试了各种方法 我能让它以类似表格的格式显示的最接近的方法是使用.format()函数对齐输出,但有几行仍然偏移。我理解这是因为前面的结果比其他结果长,但我无法找到一种方法使文本在列中对齐 当我试图修改我已有的字符串格式时,我得到了一个“元组索引超出范围”错误。但就我所知,我没有使用元组 这是我试图打印的字符串:在Python3.4中格式化列表的结果,python,list,string-formatting,python-3.4,Python,List,String Formatting,Python 3.4,我试图通过格式化print()函数,使列表计算的结果以有序的方式显示。我从这个站点和Python文档中尝试了各种方法 我能让它以类似表格的格式显示的最接近的方法是使用.format()函数对齐输出,但有几行仍然偏移。我理解这是因为前面的结果比其他结果长,但我无法找到一种方法使文本在列中对齐 当我试图修改我已有的字符串格式时,我得到了一个“元组索引超出范围”错误。但就我所知,我没有使用元组 这是我试图打印的字符串: print('{:<10}'.format("Richter Scale V
print('{:<10}'.format("Richter Scale Value:"), '{:<10}'.format(rVal),'{:^10}'.format ("Joules:"),'{:^10}'.format(joules),'{:>10}'.format("TNT:"),'{:>10}'.format(tnt))
我不知道如何让最后三条TNT生产线匹配
这是print()前面的代码:
感谢您的帮助。您需要明确设置焦耳的格式。值的精度。您只指定了最小宽度,但默认格式超过了该宽度:
print('Richter Scale Value: {:<10.1f} Joules: {:<10.8g} TNT: {:10.8g}'.format(
rVal, joules, tnt))
print('Richter Scale Value:{:首先,您必须查找最大列宽并相应地格式化表格,固定的宽度值显然不起作用,因为每个单元格中的内容长度可能不同
不久前,我创建了一个用于创建文本表的软件包,名为。谢谢Martijn,太好了。对字符串格式的额外理解非常有帮助。
rVal = 0
qList=[1,5,9.1,9.2,9.5]
qList_len = len(qList)
for i in range (0,qList_len):
rVal = qList[i]
joules = 10**((1.5*rVal)+4.8)
tnt = joules/(4.184*10**9)
print('Richter Scale Value: {:<10.1f} Joules: {:<10.8g} TNT: {:10.8g}'.format(
rVal, joules, tnt))