日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python 里什么时候缩进_python什么时候缩进

發布時間:2023/12/4 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python 里什么时候缩进_python什么时候缩进 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

決定作用域的范圍;python使用縮進空格來表示作用域的范圍,相同縮進行的代碼是處于同一范圍)。

每行代碼中開頭的空格數(whitespace)用于計算該行代碼的縮進級別(Indentation level),注意一個Tab會被替換為1~8個

Space(具體的空格數量,不同的編譯器有不同的數量),縮進級別為0表示無縮進空格。

在一個源文件不建議同時使用空格和制表縮進符,當使用別人代碼的時候幾乎是不可能知道別人使用的是空格還是制表符,這時最好統一

縮進,在IDEL編輯器中可以使用 Edit > Untabify Region 將任何制表符轉化為空格。

云海天教程網,免費的云海天教程網站,歡迎在線學習!

Python中的每一條語句都有一個縮進級別,并且縮進級別會使用棧的數據結構進行存儲。在開始讀取文件之前,0(表示縮進級別為0,無

縮進)會被首先壓入棧中。然后從文件開頭到末尾,依次讀取每行邏輯代碼,每行邏輯代碼的縮進級別都會和棧頂值進行比較,如果相

等,那么什么都不會發生;如果比棧頂值大的話,那么該行邏輯代碼的縮進級別就會被壓入棧中,同時會生成一個縮進標記(INDENT

TOKEN);如果比棧頂值小的話,那么棧中所有比該行邏輯代碼縮進級別大的值都會從棧中移除,并且還會生成一個擴展標記(DEDENT

TOKEN)。

下面是一個正確的縮進案例: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已經被壓入棧中了,所以棧中的數據不會發生改變。#1縮進4個字符,4被壓入棧中。#2

縮進18個字符,18被壓入棧中。#3縮進4個字符,18被彈出棧,棧頂值又為4了。#4和#3縮進一樣,所以不更新棧數據。#5縮進13個字

符,所以13被壓入棧中。#5、#6和#7的縮進一樣,不更新棧數據。#8縮進14個字符,14被壓入棧中。#9的縮進4個字符,所以棧中的

13和14都會彈出,棧頂值又恢復為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處應該進行出棧處理,但是在棧中找不到14這個級別,所以出錯。

又比如:

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

最后一行代碼的縮進級別是1,而且比上一行代碼的縮進級別小,所以應該出棧處理,但是在出站的時候找不到棧中以前有1的級別,所以

報錯。修改這個錯誤,只需要將最后一行的空格去掉就可以。

總結

以上是生活随笔為你收集整理的python 里什么时候缩进_python什么时候缩进的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。