a = []
for index in range(52):
a.append([])
for jindex in range(52):
a[index].append('a')
row,col = [int(x) for x in input().split(" ")]
b = []
for index in range(row):
str = input()
for jindex in range(col):
a[index+1][jindex + 1] = str[jindex]
if(str[jindex] == 'A'):
b.append([index,jindex])
#print (a)
# print (b)
ans = max(trav(x[0],x[1]) for x in b
最后一行很麻烦, trav(r,c)是一个返回整数值的函数。
我只想问这个用法是否正确?我是python的新手。
我试图从row,col = [int(x) for x in input().split(" ")]
我正在尝试存储函数trav为列表b中存储的2个项目的每个列表返回的最大值。
赞:如果列表b是[[10, 20], [2, 3]]
,并且假设func trav返回子列表中2个项目的总和。
然后第一个子列表给我们30,然后第二个给我们5.所以ans应该有一个值30
答案 0 :(得分:2)
您应该能够在最后一行的最后添加缺少的右括号。 trav(x[0],x[1]) for x in b
形成一个生成器表达式,为trav
的每个元素生成b
的值,然后max()
迭代生成的序列并返回找到的最大值。< / p>