1、兩大特性
- 動態語言:類型檢查發生在程序運行階段,常用的一些腳本語言;而類型檢查發生在程序的編譯階段則爲靜態語言,如java,c++,c等。
- 強類型語言:不管是在編譯階段還是運行階段,一旦某種類型綁定到變量後,此變量便會持有此類型,並且不能同其他類型在計算表達式時,混合使用。
2、四大基本語法
(1)命名規則
- 允許包括英文、數字以及下劃線(_),不能以數字開頭
- 名稱區分大小寫
特別說明以“下劃線”開頭的變量是有特殊意義的:
- 類變量若以單下劃線(_)開頭,代表不能直接被訪問,類似於 C# 的受保護型變量(protected),表示不能通過 import
module_name 而導入。 - 類變量若以雙下劃(__)開頭,表示爲類的私有成員,不能被導入和其他類變量訪問。以雙下劃開頭和雙下劃線結尾的變量是 Python
裏的專用標識,有特殊的身份
如 Python 自定義類中都包括 __init__和 __add__方法,如果不重寫__add__去執行兩個類加法操作,程序會拋 TypeError 異常。只有重寫後,程序才能正常執行加法操作。
如下代碼演示:
class Book(object):
# 定義類的參數
def __init__(self,book_id, book_name, book_store_count):
self.book_id = book_id
self.book_name = book_name
self.book_store_count = book_store_count
# 重寫加法操作
def __add__(self,book):
return self.book_store_count + book.book_store_count
# 創建兩個 Book 類的實例:
python_intro_book = Book(1,'python入門書',100)
ml_intro_book = Book(2,'機器學習入門書',200)
# 求兩本書的總銷量(正因爲重寫了__add__方法,所以可以直接兩個類相加)
sales_cnt = python_intro_book + ml_intro_book
print(sales_cnt) # 300
python變量命名遵循蛇形命名法。
(2)縮進原則
(3)特殊關鍵字
35個關鍵字:
提醒:
yield關鍵字用於定義生成器函數
(4)特殊運算符
- // 兩數相除且向下取整,類似於math模塊中的floor函數
- := 是在 2019 年,Python 3.8 版本里,剛剛纔被支持的運算符,被形象地稱爲“海象運算符”。
#一般寫法
n = len(a)
if n > 10:
print(f"{n}大於10")
#海象運算符寫法,將賦值和比較寫在一起
if (n := len(a)) > 10:
print(f"{n}大於10")
- python支持鏈式比較,即存在形如:4<i<5的比較寫法。