mountains = [["Whitney", 4412, 36.578, -118.292],
["Williamson", 4384, 36.656, -118.311],
["Sill", 4312, 37.096, -118.504],
["Shasta", 4303, 41.409, -122.195],
["Russell", 4281, 36.590, -118.291]]
def printAllMountains(mntlist):
for mountain in mntlist:
printRow(mountain)
print()
def printRow(row):
for item in row:
print(item, " ", end="")
printAllMountains(mountains)
def findMountain(name, mtnlist):
for mountain in mtnlist:
if name == mountain[0]:
return mountain
为什么if name == mountain[0]:
为0?这不是指索引0吗?
这与迭代有关吗?
答案 0 :(得分:0)
for mountain in mtnlist:
在这里,您正在迭代列表列表 - 我们将其称为子列表
if name == mountain[0]:
在这里你要检查提供的名称(当调用函数时)是否是子列表中的名称,现在如果条件为真,我们return mountain
(子列表) )。
所以为了把它包起来,我们在调用时比较提供给函数的名称和列表{0}中索引0的子列表中的名称