這九個Python語法,你都知道嗎?
之前兩講分別討論Python七大用武之地,Python入門前10件必知事項,今天第三講討論9 個最常用的Python核心語法,這些對Python初學者很有用,建議收藏這個視頻:
我們知道程序語言是由一行一行的代碼組成,使用更底層語言描述,代碼就是指令,指令是計算機能夠認識的語言。對我們而言只需寫出更高層的、更友好的、更易學的Python代碼就行,而準確寫出Python代碼的正式第一步正是:了解Python的核心語法
我們編寫的Python 程序由 解析器 讀取,將程序文本轉為 Unicode 代碼點,默認編碼為utf-8。
這里出現第1個Python語法規則:編碼聲明,一般出現在第一行,聲明為utf-8的語法格式如下:
- # -*- coding: utf8 -*-
但是自從Python3默認的文本編碼就是utf8,所以這個語法變得有些無用,只有在Python2時代才有價值,但現在是Python3,所以你只需了解此語法就行。
下面介紹第2個Python語法規則:縮進,縮進是Python最有特色的語法之一,Python使用縮進表達邏輯關系:
- def print_hello():
- print("hello world")
需要注意的是,請不要使用制表符tab表達縮進,要使用空格,一般是4個空格。
第3個Python語法介紹:標識符,標識符就是變量的名字,或者函數,或者類的名字,所以這個語法也是必須要知道的。
有效標識符字符為:大小寫字母 A 至 Z、下劃線 _ 、數字 0 至 9,但不能以數字開頭。
所以:__a__是合法的標識符,9m是非法的標識符,會提示:
- SyntaxError: invalid syntax
第4個Python語法是關鍵字,又稱為保留字,這是Python系統內部使用的標識符,因此這就注定了我們不能使用這些標識符。如布爾值False就不能被我們作為變量名使用,很有必要了解所有的關鍵字,因為一旦你的程序中使用了你不知道的某個關鍵字,就會出現莫名的錯誤。
如下是Python3所有的關鍵字:
- False await else import pass
- None break except in raise
- True class finally is return
- and continue for lambda try
- as def from nonlocal while
- assert del global not with
- async elif if or yield
把它們看一遍。
第5個Python語法是字面值,一句話:字面值就是常量值的表示法,你可能會不太熟悉這種叫法,但是舉幾個例子,一看便知:
字符串字面值
- a = 'programmer' # 這是一個字面值
- #還可以寫作:
- b = "programmer"
- c = """programmer"""
轉義字面值
- # 這也是一個字面值
- # \表示對n的轉義,轉義后表示換行
- d = '\n'
數值字面值
- e = 1024 # 十進制1024
- f = 0x400 # 0x表示這是一個十六進制數字
- g = 3.14 # 浮點數
- h = 1.41e-2 # 科學計數法的浮點數
第6個Python語法是運算符,對此你應該很熟悉,就是平時使用的加減乘除等符號,完整運算符如下:
- + - * ** / // % @
- << >> & | ^ ~ :=
- < > <= >= == !=
著重介紹幾個可能讓你陌生的,如**表示幾次方,@是裝飾器的語法,:= 形象稱為海象運算符,表示賦值與條件判斷結合,Python 3.8才開始支持。
- 2**3 # 8
- if (a:=5) > 0:
- print(a) # 5
第7個Python語法是探討運算符優先級問題:
第8個語法是求值順序:Python 按從左至右的順序對表達式求值。但注意在對賦值操作求值時,右側會先于左側被求值。
說起來容易,從左至右,但絕不是死板的從左至右,舉兩個例子演示:
- 1 + 10 ** --2 # 101
- 10 ** 3 + 3 * 8 // 1 > 0 # True
想要改變求值順序,使用一對括號:
- 10 ** 3 + 3 * 8 // (1 > 0) # 1024
第9個語法是討論條件表達式
條件表達式(有時稱為“三元運算符”)在所有 Python 運算中具有最低的優先級。
- x if C else y
表達式x if C else y 首先是對條件 C 求值。如果 C 為真,x 將被求值并返回其值;否則將對 y 求值并返回其值。
- a = 10 ** 3 if 1 > 0 else 10 ** -3
- a # 1000
以上就是 9 個最常用、最基礎的Python語法,都看到這里了,可否點贊或轉發支持一下,這樣我更有動力做好下一期,謝謝你。