【发布时间】:2018-08-30 04:21:44
【问题描述】:
这段代码的目的是尝试输出一个元组的第二个元素与另一个元组的第一个元素相同的路由。
当 i += 1 与 for 循环具有相同的缩进时,“JFK”是原点,路径 = 段。 我得到了 ['JFK', 'DEN', 'SFO', 'LAS', 'LAX', 'ORD', 'ATL'] 这是正确答案。
当 i += 1 具有与 if 语句相同的缩进时,我只得到 ['JFK', 'DEN', 'SFO', 'LAS']。 有谁知道为什么???
segments = [
("JFK", "DEN"),
("DEN", "SFO"),
("SFO", "LAS"),
("LAS", "LAX"),
("LAX", "ORD"),
("ORD", "ATL"),
("ATL", "JFK"),
]
def get_route(path, origin):
my_list = []
i = 0
list_len = len(path)
path_copy = path.copy()
while i <= list_len:
for k in path_copy:
if origin == k[0] and origin not in my_list:
my_list.append(k[0])
origin = k[1]
path_copy.remove(k)
i += 1
return my_list
get_route(segments, "JFK")
【问题讨论】:
-
请提供您传递的参数以测试您的功能/方法
-
是分段。
-
get_route(segments,segments) 似乎不起作用?你是这样称呼的吗?
-
完成编辑
标签: python variables for-loop if-statement while-loop