python透過縮進來判斷運算是否在分支結構中。 建議學習中:Python視訊教學)
Python中的縮排(#Python影片教學》決定了程式碼的作用範圍。這一點和傳統的c/c 有很大的不同(傳統的c/c 使用花括號{}符,python使用縮排空格)。
每行程式碼中開頭的空格數(whitespace)用於計算該行程式碼的縮排等級(Indentation level),注意一個Tab等於8個空格(Space),縮排等級為0表示無縮排空格。
Python中的每個語句都有一個縮排級別,並且縮排級別會使用堆疊的資料結構進行儲存。
在開始讀取檔案之前,0(表示縮排等級為0,無縮排)會先被壓入堆疊中。然後從檔案開頭到結尾,依序讀取每行邏輯程式碼,每行邏輯程式碼的縮排層級都會和堆疊頂值進行比較,如果相等,那麼什麼都不會發生;
如果比堆疊頂值大的話,那麼該行邏輯程式碼的縮排等級就會被壓入堆疊中,同時會產生一個縮排標記(INDENT LEVEL);如果比棧頂值小的話,那麼棧中所有比該行邏輯程式碼縮排等級大的值都會從堆疊中移除,也會產生一個擴展標記(DEDENT LEVEL)。
下面是一個正確的縮排案例:
def perm(l):#0 # Compute the list of all permutations of l if len(l) <= 1:# 1 return [l]# 2 r = []# 3 for i in range(len(l)):# 4 s = l[:i] + l[i+1:]# 5 p = perm(s)# 6 for x in p:# 7 r.append(l[i:i+1] + x)# 8 return r# 9
以上是python透過什麼來判斷操作是否在分支結構中的詳細內容。更多資訊請關注PHP中文網其他相關文章!