【发布时间】:2018-08-06 02:43:00
【问题描述】:
我有一个称为网格的二维列表。
grid = [[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]]
动作列表:
actlist = [1,2,3,4]
还有一个二维列表:
U = [[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]]
还有一个名为 T 的函数,它接受 3 个整数作为参数。
def T(i,j,actions):
函数 T 如下所示: 这个函数的作用是,它接受 i,j 和动作并返回元组的元组,如下所示-
现在的问题是,当我尝试在 python 的内置 sum 函数中调用该函数时,在 for 循环中它显示错误。
它显示的错误是
我的问题是,如何使用 for 循环分别获取 3 个元组,我可以在每次迭代中使用一个元组中的所有三个值。 还有一件事,以下代码无法获取三个元组的单个值。
【问题讨论】:
-
哪一行报错了?
-
我面临的问题是函数的返回值。它返回一个由 3 个元组组成的元组。当我试图迭代调用函数的返回值时,它显示了 int object is not iterable 的错误。
-
q_value = sum(U[k][l]*p for (k,l,p) in T(i,j,a))
标签: python python-3.x sum tuples return-type