元组索引超出范围意味着什么?

时间:2015-12-24 05:57:53

标签: python printing format

任何人都可以了解原因:

print('{0} complete (down: {1} kb/s up: {2} kb/s {3} peers: {4} {5}'.format('state.progress * 100', 'state.download_rate / 1000', 'state.upload_rate / 1000', 'state.num_peers', 'state_str[state.state]'))

结果是元组索引超出范围?

1 个答案:

答案 0 :(得分:5)

您没有“第五个”(或更确切地说,索引5)元素,因为第一个元素的索引为0。

因此,您必须有6个元素才能使用索引5.

print('{0} complete (down: {1} kb/s up: {2} kb/s {3} peers: {4} {5}'.format('state.progress * 100', 'state.download_rate / 1000', 'state.upload_rate / 1000', 'state.num_peers', 'state_str[state.state]'))

在这里,您的元素是:

0: 'state.progress * 100'
1: 'state.download_rate / 1000'
2: 'state.upload_rate / 1000'
3: 'state.num_peers'
4: 'state_str[state.state]'
5: nil