Python保留字總結
昨晚有讀者問行哥有沒有保留字總結,這不它來了
關鍵字
保留字也稱為關鍵字,指被編程語言內部定義并保留使用的標識符,程序員編寫程序時不能定義與保留字相同的標識符。每種程序設計語言都有一套保留字,保留字一般用來構成程序整體框架、表達關鍵值和具有結構性的復雜語義等。掌握一門編程語言首先要熟記其所對應的保留字。
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
一共有35個關鍵字,行哥來分門別類的給大家介紹一下,有不認識的可以給自己補充一下了
1. ?True、False
2. and、or、not
3.class
4.is、in
5.try、except、finally、raise
6.if、elif、else
7.def、global、nonlocal、return、yield
8.for、while
9.break、continue
10.assert
11.del
12.import、from、 as
13.with
14.pass
15.await、async
16.lambda
1. ?True、False
False 布爾類型的值,表示假,與True相反 True 布爾類型的值,表示真,與False相反
2. and、or、not
邏輯運算符 與、或、非
3.class
定義類的關鍵字
4.is、in
Python中的對象包含三個要素:id,type,value 其中:
id:用來唯一標識一個對象 type:標識對象的類型 value:是對象的值
is:就是用來判斷a對象是否就是b對象,是通過id來判斷的
==:判斷的是a對象的值是否和b對象的值相等,是通過value來判斷的
in:判斷變量是否存在序列中
5.try、except、finally、raise
使用try...except...finally語句來處理異常。
通常的語句塊放在try塊中 錯誤處理的語句放在except塊中 始終執(zhí)行的語句放在finally塊中 raise 語句拋出一個指定的異常。
try:????????
????#some?code?here????????
????raise?MyException??????
except?MyException:????????
????print("MyException?encoutered")?
finally:????????
????print("Arrive?finally")
????
x?=?10
if?x?>?5:
????raise?Exception('x 不能大于 5。x 的值為:?{}'.format(x))
6.if、elif、else
判斷語句,if語句用來檢驗一個條件,如果條件為真,運行一塊語句(稱為if…塊),否則處理另外一塊語句(稱為else…塊)。else從句是可選的
7.def、global、nonlocal、return、yield
def 定義函數(shù)的關鍵字 global 定義全局變量 nonlocal 在局部尋找外層函數(shù)中離他最近的那個變量 return 函數(shù)中的返回值 yield的用法有點像return,除了它返回的是一個生成器
def?createGenerator():
????mylist?=?range(3)
????for?i?in?mylist:
????????yield?i*i
8.for、while
for循環(huán)可以遍歷任何序列的項目,如一個列表或者一個字符串 while循環(huán)可以通關判斷條件真假無限循環(huán)
9.break、continue
break語句是用來終止循環(huán)語句,即使哪怕循環(huán)條件沒有稱為false或者序列還沒有被完全遞歸,也會停止循環(huán) continue語句被用來跳過當前循環(huán)塊中的剩余語句,繼續(xù)進行下一輪循環(huán)
10.assert
assert 關鍵字用于在代碼中設置檢查點,用于當程序出現(xiàn)錯誤時中斷程序執(zhí)行。
>>>?a?=?3
>>>?assert?0?10
>>>?a?=?20
>>>?assert?0?10
Traceback?(most?recent?call?last):
??File?"" ,?line?1,?in?
????assert?0?10
AssertionError
#?assert?條件后可以增加錯誤信息解釋
>>>?a?=?20
>>>?assert?0?10,?'超出范圍!'
Traceback?(most?recent?call?last):
??File?"" ,?line?1,?in?
????assert?0?10,?'超出范圍!'
AssertionError:?超出范圍!
11.del
del刪除變量或者序列的值
a?=?[-1,3,'aa',85]?#?定義一個list??????
del?a[0]?#?刪除第0個元素??????
del?a[2:4]?#?刪除從第2個到第3個元素。
12.import、from、 as
用于導包,as為重命名
from?turtle?import?fd?as?f
13.with
用于文件的讀寫
#?寫文件
with?open("test.txt",?"wt")?as?out_file:
????out_file.write("公眾號:一行數(shù)據,沒想到吧,這里有植入")
14.pass
pass空的類,函數(shù),方法的占位符
15.await、async
async 用來聲明一個函數(shù)為異步函數(shù),異步函數(shù)的特點是能在函數(shù)執(zhí)行過程中掛起,去執(zhí)行其他異步函數(shù),等到掛起條件(假設掛起條件是sleep(5))消失后,也就是5秒到了再回來執(zhí)行。
await 用來用來聲明程序掛起,比如異步程序執(zhí)行到某一步時需要等待的時間很長,就將此掛起,去執(zhí)行其他的異步程序。
async?def?test2(i):
?????r?=?await?other_test(i)
?????print(i,r)
?
async?def?other_test(i):
?????r?=?requests.get(i)
?????print(i)
?????await?asyncio.sleep(4)
?????print(time.time()-start)
?????return?r
url?=?["https://segmentfault.com/p/1210000013564725",
????????"https://www.jianshu.com/p/83badc8028bd",
????????"https://www.baidu.com/"]
?
loop?=?asyncio.get_event_loop()
task?=?[asyncio.ensure_future(test2(i))?for?i?in?url]
start?=?time.time()
loop.run_until_complete(asyncio.wait(task))
endtime?=?time.time()-start
print(endtime)
loop.close()
16.lambda
通常是在需要一個函數(shù),但是又不想費神去命名一個函數(shù)的場合下使用,也就是匿名函數(shù)
<函數(shù)名> = lambda <參數(shù)> : <表達式>
f?=?lambda?x,?y,?z:?x+y+z??#f是表達式的名字
>>>?f(1,2,3)??#像函數(shù)一樣調用

推薦閱讀
(點擊標題可跳轉閱讀)
?



