python - 乘客数量。错误 : list indices must be integers or slices, 未列出

标签 python python-3.x

因此,我正在尝试对每个站​​点的乘客人数进行求和。

“stops”变量是停靠站的数量,并由包含乘客进出情况的元组一致,例如:

stops = [(in1, out1), (in2, out2), (in3, out3), (in4, out4)]
stops = [(10, 0), (4, 1), (3, 5), (3, 4), (5, 1), (1, 5), (5, 8), (4, 6), (2, 3)]
number_passenger_per_stop = []

for i in stops:
    resta = stops[i][0] - stops[i][1]
    number_passenger_per_stop.append(resta)
print(number_passenger_per_stop)

我可以在循环外进行这样的数学计算,但我不明白为什么在循环中会崩溃:

停止[i][0] - 停止[i][1]

最佳答案

i 不是列表索引,它是列表元素本身。您不需要编写 stops[i]

resta = i[0] - i[1]

如果你这样写,你的代码就是正确的

for i in range(len(stops)):

您还可以用列表理解替换整个内容:

number_passenger_per_stop = [on - off for on, off in stops]

关于python - 乘客数量。错误 : list indices must be integers or slices, 未列出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58084241/

相关文章:

python - 如何在python中循环多个文件并逐一处理

python - 对象列表或并行属性数组?

python - 如何让 Pandas 根据出现次数为值添加递增后缀

python - 如何从浏览器访问在 Google Compute Engine 虚拟机上运行的 Django?

python - 将 2 个 python 类对象添加在一起

algorithm - 如何使我的斐波那契与模块化算术更有效地找到皮萨诺循环?

Python 日期时间奇怪的行为

python - 如何使用Python中的套接字库将服务器连接到其他计算机?

python - 在 Python 范围函数中使用自定义顺序

python - Tornado POST 请求的返回响应