- Python基礎01-Python簡介
- Python基礎02-Python基本語法
- Python基礎03-基本數據類型
- Python基礎04-分支及循環
- Python基礎05-函數
- Python基礎07-類與對象
- Python基礎08-模塊及包
Python基本語法
基本語法
縮進
if x > 0:
print("正數")
elif x = 0:
print("0")
else:
print("負數")
def add(x,y):
return x+y
縮進支持使用4個空格或tab進行縮進,由於在不同平台上tab長度不一樣,建議統一使用4個空格縮進,不要混合使用空格和tab縮進。
一行多條語句
x=1; y=2; print(x+y)
斷行
print("this line is too long, \
so I break it to two lines")
注釋
# 單行注釋
a = 1
'''這是一段
多行注釋'''
def add(x, y):
"""加法函數:這是docstring(函數說明)"""
pass
類型注釋
在函數中,可以對參數及返回值類型進行注釋,示例如下:
def add(x: int, y: int) -> int:
return x+y
注釋只是一種聲明,不影響運行,運行時也不會做類型檢查。
變量
- 變量類型(局部變量、全局變量、系統變量)
- 變量賦值
- 多重賦值
x=y=z=1
- 多元賦值
x,y = y,x
- 變量自增
x+=1
,x-=1
(不支持x++
,x--
)
Python3中沒有常量
運算符
- 算術運算符:一般用於數字類型的計算
- +:加,如
1+2
,結果為3,在字符串中為連接,如'1' + '2'
,結果為'12',不同類型不能直接相加。 -
- :減,如
3-1
,結果2
- :減,如
- :乘,如`23,結果為6
- /:除:如
3/2
,結果為1.5 - //:地板除(只向下保留整數),如
3//2
,結果為1,3//-2
,結果為-2 - **:乘方,如
4**2
,結果為16 - %: 取余,如果
5%2
,結果為1
- +:加,如
- 比較運算符:可用於兩個相同類型對象的比較
- ==:相等比較,如
1+1==2
,結果為True,{'a': 1, 'b': 2} = {'b': 1 , 'a': 1}
,結果為True - !=:比較是否不等,如
1+1 != 3
,結果為True,[1,2,3] != [2,1,3]
,結果為True -
: 比較大於
- <:比較小於
-
=: 比較大於等於
- <=:比較小於等於
- ==:相等比較,如
- 身份運算符:用於判斷是否同一對象
- is:判斷是同一對象,'=='只判斷值是否相等,如
True==1
,is則判斷是否同一對象(使用id()得出的內存地址相同),2>1 is True,結果為True,
a=None;a is None`,結果為True - is not:判斷非同一對象,如
True is not 1
結果為True。
- is:判斷是同一對象,'=='只判斷值是否相等,如
- 賦值運算符:用於將值賦給變量
- =:賦值,如
a = 1
,將1賦給變量a,支持多重賦值,如a,b = 1,2
或a,b=[1,2]
(賦值時序列會自動解包變為1,2兩個變量),結果為將1賦給a,將2賦給b - +=:變量自增,如
a+=1
相當於a=a+1
- -=: 自減
- *=:自乘
- /=:自除
- //=:自地板除
- **=:自乘方
- %=:自取余
- =:賦值,如
- 邏輯運算符:用於多個表達式的邏輯判斷,有短路效應
- and:並且,如
1>2 and 1>0
,都為真時返回最后一個結果的值。當第一個條件為假時不執行后面的判斷,直接返回False,如果第一個條件為真時結果為第二個判斷的結果(本例實際1>0不會執行) - or:或,如
1>2 or 1>0
,返回第一個為真的值或都無假時返回最后一個結果的值。當第一個條件為真是不執行后面的判斷,直接返回True,否則返回第二個結果的值(本例1>0會執行) - not:非,如
not 1>2
,結果為True
- and:並且,如
- 成員運算符:用於判斷包含,常用判斷字符串、列表、元祖、集合、字典中是否包含某元素(某鍵值)
- in:是否在其中,如
a in 'abcd'
,結果為True,或1 in [1,2,3]
,結果為True,或'name' in {'name': 'kevin', 'age': 12}
,結果為True。 - not in:判斷不包含,如
a not in 'bcde'
結果為True,從效率上由於not in會對比所有的元素,因此效率比使用in低
- in:是否在其中,如
- 位運算符:用於二進制或集合運算
- &:按位與
- |:按位或
- ~:按位取反
- ^:按位異或
- <<:左移
-
:右移
運算符優先級
表達式與語句
Python代碼由表達式和語句組成
表達式(Expression)是運算符(operator)和操作數(operand)所構成的序列,語句是讓計算機執行特定操作的指示。
表達式
表達式一般結果為一個Python對象,如1+2
, int('123')
,range(10)
表達式一般可以包含算數運算符、比較運算符、邏輯運算符、成員運算符、位運算符,但不能包含賦值運算符
由於表達式計算后返回一個Python對象,因此表達式可以當做待計算的變量一樣使用,如用於assert斷言語句后,print語句中,if語句中:
print(2>1)
assert 2>1
if 2>1:
....
表達式計算,如果有個字符串如
'1+1'
,想要按Python表達式方式求值可以使用eval函數,eval('1+1')
,結果為2。
語句
結果不是對象的代碼則成為‘語句’。它們表示的是一個動作而不是生成或者返回一個值。
常見的Python語句有:
- 賦值語句
- 調用
- print:打印對象
- if/elif/else
- for/else、while/else
- pass
- break、continue
- def
- return、yield
- global
- raise
- import、from ... import