python語法風格

這裏只給出其它文章裏不適合出現部分語法風格。python

python有幾種類型的複合語句:if、for、while、def、class、try/except、with/as等。這些複合類型的語句在編寫時,要遵循python的語法風格:函數

  1. 冒號結尾複合語句的聲明,如if expr:def f():
  2. 經過縮進數量決定代碼塊層次,同級別的代碼塊縮進數量相同
    • 也就是經過縮進來取代其它語言中的{}表示的代碼塊層次
  3. 代碼體部分縮進,縮進數量隨意,但同一層次的代碼塊縮進數量必須相同
  4. 若是代碼體部分只有一個語句,能夠直接放在聲明行冒號的後面,如if expr: print("a")
  5. 能夠使用空格或製表符進行縮進,但縮進同一層次時,不要混用空格或製表符
  6. 容許這些複合語句的聲明行部分的表達式不使用括號包圍,但使用括號也不會錯,使用括號是爲了確保表達式的優先級
  7. python中的括號類型(如小括號、中括號、大括號)均可以讓代碼換行書寫,也就是續行。雖然\也有效,但不建議。

例如:code

if a > 3:
    print("hello world1")
    print("hello world2")
else:
    print("hello world else")

上面if和else位於同一層次的全局(文件)代碼塊,if的主分支兩個語句位於同一層次的代碼塊(縮進相同)。在其餘語言中,對等的寫法大概以下:it

if (a > 3) {
    print("hello world1")
    print("hello world2")
} else {
    print("hello world else")
}

python中,條件表達式部分加上括號也沒問題:class

if (a>3):
    ...

若是代碼體只有單個語句,代碼體能夠直接放在冒號後面。例如:語法

if a > 3:print("a")
def f():print("a")
class F:pass

括號類型包圍的內容,包括列表的中括號[]、集合或字典的大括號{}、元組或表達式或包圍函數參數的小括號(),它們能夠隨意換行。語言

例如:集合

a = "aaa" + "bbb"
a = ("aaa" + 
     "bbb")

L = [11,22,33,44]
L = [11,22,
    33,44]

D = {"k1":"v1", "k2":"v2", "k3":"v3"}
D = {"k1":"v1",
     "k2":"v2",
     "k3":"v3"}

if a > 3: print(a)
if (a >
    3):print(a)
相關文章
相關標籤/搜索