Python縮進(jìn)和冒號詳解
對于Python而言代碼縮進(jìn)是一種語法,Python沒有像其他語言一樣采用{}或者begin...end分隔代碼塊,而是采用代碼縮進(jìn)和冒號來區(qū)分代碼之間的層次。
縮進(jìn)的空白數(shù)量是可變的,但是所有代碼塊語句必須包含相同的縮進(jìn)空白數(shù)量,這個必須嚴(yán)格執(zhí)行。
例如:
if True: print("Hello girl!") #縮進(jìn)一個tab的占位 else: #與if對齊 print("Hello boy!") #縮進(jìn)一個tab的占位
Python對代碼的縮進(jìn)要求非常嚴(yán)格,如果不采用合理的代碼縮進(jìn),將拋出SyntaxError異常。
if True: print("Hello girl!") else: print("Hello boy!") print("end")
運行該段代碼將會拋出異常。
錯誤表明,你使用的縮進(jìn)方式不一致,有的是 tab 鍵縮進(jìn),有的是空格縮進(jìn),改為一致即可。
有時候代碼采用合理的縮進(jìn)但是縮進(jìn)的情況不同,代碼的執(zhí)行結(jié)果也不同。有相同的縮進(jìn)的代碼表示這些代碼屬于同一代碼塊。
例如:
# -*- coding: UTF-8 -*- if True: print("Hello girl!") else: print("Hello boy!") print("end") print("=========華麗的分割線===========") if True: print("Hello girl!") else: print("Hello boy!") print("end")
運行結(jié)果:
分割線以上的print("end")未縮進(jìn)與if對齊,因此它與if屬于同一代碼塊,執(zhí)行完if的操作,執(zhí)行輸出。
分割線一下的print("end")與print("Hello boy!")保持一致的縮進(jìn),則它與print("Hello boy!")屬于else之內(nèi)的代碼塊。
縮進(jìn)相同的一組語句構(gòu)成一個代碼塊,我們稱之代碼組。
像if、while、def和class這樣的復(fù)合語句,首行以關(guān)鍵字開始,以冒號( : )結(jié)束,該行之后的一行或多行代碼構(gòu)成代碼組。
我們將首行及后面的代碼組稱為一個子句(clause)
Python多行語句
Python語句中一般以新行作為為語句的結(jié)束符。但是我們可以使用斜杠( \)將一行的語句分為多行顯示。
num1 = 1 num2 = 2 num3 = 3 total = num1 + \ num2 + \ num3 print("total is : %d"%total)
語句中包含[], {} 或 () 括號就不需要使用多行連接符
days = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday'] print(days)
Python代碼中一行只能有一個語句,以新行作為為語句的結(jié)束符。如果一行含有多個語句將會拋出異常。
該種方式完全是像java在聲明變量呀。
Python2中貌似可以用分號分隔,我機(jī)器上沒有裝2.x沒有試,親測Python3下不可以。
正解如下:
num1,num2,num3 =1,2,3 total = num1 + \ num2 + \ num3 print("total is : %d"%total)
Python空行
函數(shù)之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數(shù)入口之間也用一行空行分隔,以突出函數(shù)入口的開始。
空行與代碼縮進(jìn)不同,空行并不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。但是空行的作用在于分隔兩段不同功能或含義的代碼,便于日后代碼的維護(hù)或重構(gòu)。
記?。嚎招幸彩浅绦虼a的一部分。
以上這篇Python縮進(jìn)和冒號詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
pandas把所有大于0的數(shù)設(shè)置為1的方法
今天小編就為大家分享一篇pandas把所有大于0的數(shù)設(shè)置為1的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01python 解決flask uwsgi 獲取不到全局變量的問題
今天小編就為大家分享一篇python 解決flask uwsgi 獲取不到全局變量的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-12-12python開發(fā)實例之Python的Twisted框架中Deferred對象的詳細(xì)用法與實例
這篇文章主要介紹了python開發(fā)實例之Python的Twisted框架中Deferred對象的詳細(xì)用法與實例,需要的朋友可以參考下2020-03-03