欧美一区二区三区老妇人-欧美做爰猛烈大尺度电-99久久夜色精品国产亚洲a-亚洲福利视频一区二区

Python中的縮進規(guī)則有哪些-創(chuàng)新互聯(lián)

Python中的縮進規(guī)則有哪些?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

桂東網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項目制作,到程序開發(fā),運營維護。成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立到現(xiàn)在10年的時間,我們擁有了豐富的建站經(jīng)驗和運維經(jīng)驗,來保證我們的工作的順利進行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。

Python中的縮進(Indentation)決定了代碼的作用域范圍。這一點和傳統(tǒng)的c/c++有很大的不同(傳統(tǒng)的c/c++使用花括號{}符,python使用縮進空格)。

每行代碼中開頭的空格數(shù)(whitespace)用于計算該行代碼的縮進級別(Indentation level),注意一個Tab等于8個空格(Space),縮進級別為0表示無縮進空格。

Python中的每一條語句都有一個縮進級別,并且縮進級別會使用棧的數(shù)據(jù)結(jié)構(gòu)進行存儲。在開始讀取文件之前,0(表示縮進級別為0,無縮進)會被首先壓入棧中。然后從文件開頭到末尾,依次讀取每行邏輯代碼,每行邏輯代碼的縮進級別都會和棧頂值進行比較,如果相等,那么什么都不會發(fā)生;如果比棧頂值大的話,那么該行邏輯代碼的縮進級別就會被壓入棧中,同時會生成一個縮進標(biāo)記(INDENT LEVEL);如果比棧頂值小的話,那么棧中所有比該行邏輯代碼縮進級別大的值都會從棧中移除,并且還會生成一個擴展標(biāo)記(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

上面的#0行,縮進0個字符,由于文件讀取之前0已經(jīng)被壓入棧中了,所以棧中的數(shù)據(jù)不會發(fā)生改變。#1縮進4個字符,4被壓入棧中。#2縮進18個字符,18被壓入棧中。#3縮進4個字符,18被彈出棧,棧頂值又為4了。#4和#3縮進一樣,所以不更新棧數(shù)據(jù)。#5縮進13個字符,所以13被壓入棧中。#5、#6和#7的縮進一樣,不更新棧數(shù)據(jù)。#8縮進14個字符,14被壓入棧中。#9的縮進4個字符,所以棧中的13和14都會彈出,棧頂值又恢復(fù)為4。

下面是一個錯誤的案例

   def perm(l):            #1 error: first line indented
  for i in range(len(l)):       #2 error: not indented
    s = l[:i] + l[i+1:]
      p = perm(l[:i] + l[i+1:])  #3 error: unexpected indent
      for x in p:
          r.append(l[i:i+1] + x)#4
        return r        #5 error: inconsistent dedent

#1、#2和#3處的錯誤解釋的很清楚了。#5的縮進級別在棧中找不到所以出錯,#5處的縮進級別是14,比它的上面一行縮進級別18,所以在#5處應(yīng)該進行出棧處理,但是在棧中找不到14這個級別,所以出錯。

又比如:

if True:
  print("hello girl")
else:
  print("hello boy")
 print("end")

關(guān)于Python中的縮進規(guī)則有哪些問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。

當(dāng)前題目:Python中的縮進規(guī)則有哪些-創(chuàng)新互聯(lián)
標(biāo)題路徑:http://chinadenli.net/article24/decpje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、品牌網(wǎng)站建設(shè)、網(wǎng)站收錄、手機網(wǎng)站建設(shè)、搜索引擎優(yōu)化、網(wǎng)站制作

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管