我试图使用format()将一个元组的几个值添加到一起。我编写了一个函数,它返回一个包含12个值的元组。
我的元组看起来是这样的:
In[86]results Out[86]: (15.24, 2527.4, 2812.59, 7.87, 2389.72, 1795.39, 594.33, 98.34, 68.84, 60.0, 132, 5)
我一直在打印这样的标准(基于从docs.python.org格式示例):
print('-Sponge Yeast: {0[0]}g'.format(results))
print('-Sponge Flour: {0[1]}g'.format(results))
print('-Sponge Water: {0[2]}g'.format(results))
我想打印另一行,即结果中的前3个值之和。
在过去,我可以这样做:
其中a,b,c.,i分别等于12个值。
我不想为元组的12个值创建12个变量,而是为元组使用一个变量。但是,如何在元组中求和几个值并使用我尝试过的格式()?:
print('-Total Sponge Weight: {0[0] + 0[1] + 0[2]}g'.format(results))
print('-Total Sponge Weight: {:n}g'.format(0.results + 1.results + 2.results))
但这行不通。我知道我可以简单地让我的函数输出正确的值,并且我可以将它称为{0xx}。只是想知道有没有别的办法。
发布于 2018-11-19 14:37:29
使用Python3的,这很容易。
values = (1, 2, 3)
In[1]: f'The sum of values is {values[0]+values[1]+values[2]}!
Out[1]: 'The sum of values is 6!
发布于 2018-11-18 11:18:21
您可能会使用压印。我本人从未使用过它,但它是为格式化的数据打印而设计的。
https://stackoverflow.com/questions/53343451
复制相似问题