因此,x是我在嵌套列表t中查找的值。我理解整個代碼和列表理解會發生什麼,我不明白的是[5]成爲路徑的哪一點,然後[3,5]成爲路徑,最後返回[1,3,5]以顯示價值的最終路徑。搜索任意嵌套列表並返回路徑(Python)
def findPath(t, x):
if t[0] == x:
return [t[0]]
for path in [findPath(branch, x) for branch in t[1:]]:
if path:
return [t[0]] + path
t = [1, [3, [4], [5]], [2]]
findPath(t, 5)
#returns [1,3,5]
findPath(t, 2)
#returns [1 ,2]
這裏是一個鏈接,讓我瞭解到一步一步,我只是不明白的清單是如何成爲最終返回[T [0] +路徑的路徑。 https://開頭goo.gl/ZRrZv7