python关键字的意思_python 关键字(Keywords)
2018-04-30
python 關鍵字(Keywords)
聲明:本文章大部分來自下面博客,對其作者表示感謝。以后會有詳細的關鍵字說明。
1、and: 表示邏輯‘與’
2、del: 用于list列表操作,刪除一個或者連續(xù)幾個元素
3、from: 導入相應的模塊,用import或者from…import
4、not: 表示邏輯‘非’
5、while: while循環(huán),允許重復執(zhí)行一塊語句,無限循環(huán)情況下使用。(少用,多用for)
6、as:as單獨沒有意思,是這樣使用:with….as用來代替?zhèn)鹘y(tǒng)的try…finally語法的。
基本思想是:with所求值的對象必須有一個__enter__()方法,一個__exit__()方法。緊跟with后面的語句被求值后,返回對象的__enter__()方法被調(diào)用,這個方法的返回值將被賦值給as后面的變量。當with后面的代碼塊全部被執(zhí)行完之后,將調(diào)用前面,返回對象的__exit__()方法。示例如下:
class Sample:
def __enter__(self):
print “In __enter__()”
return “Foo”
def __exit__(self, type, value, trace):
print “In __exit__()”
def get_sample():
return Sample()
with get_sample() as sample:
print “sample:”, sample
輸出結(jié)果:
In __enter__()
sample: Foo
In __exit__()
第一步: __enter__()方法被執(zhí)行
第二步: __enter__()方法返回的值 – 這個例子中是”Foo”,賦值給變量’sample’
第三步:執(zhí)行代碼塊,打印變量”sample”的值為 “Foo”
第四步: __exit__()方法被調(diào)用with真正強大之處是它可以處理異常。可能你已經(jīng)注意到Sample類的__exit__方法有三個參數(shù)- val, type 和 trace。這些參數(shù)在異常處理中相當有用。
7、elif:和 if 配合使用,if 語句中的一個分支用 elif 表示(細小規(guī)則參見設計和調(diào)試簡書 – 寫文章)
8、global: 定義全局變量,我的理解就是:要想給全局變量重新賦值,就要global一下全局變量(相當于告訴你:哦,注意了!下面我要設定全局變量的值的),之后在重新賦值。示例如下:
#coding:utf-8
#################
#################
#熟悉global
#定義全局變量,變量名全部大寫
NAME = “xueweihan”
#得到NAME值
def get_NAME():
return NAME
#重新設定NAME值
def set_NAME(name_value):
global NAME
NAME = name_value
print u”輸出全局變量NAME的值:”,get_NAME()
new_name = “521xueweihan”
set_NAME(new_name)#為全局變量重新賦值
print u”輸出賦值完的全局變量NMAE的值:”,get_NAME()
輸出結(jié)果:
輸出全局變量NAME的值: xueweihan輸出賦值完的全局變量NMAE的值: 521xueweihan
9、or: 表示邏輯 ‘或’
10、with: 和 as 一起使用,使用方法看 as
11、assert:表示斷言(斷言一個條件就是真的,如果斷言出錯則拋出異常)用于聲明某個條件為真,如果該條件不是真的,則拋出異常:AssertionError
12、else:看下面 if 的解釋
13、if:if 語句用于選擇分支,依據(jù)條件選擇執(zhí)行那個語句塊。(這里多說一句:if語句中最好不要嵌套if語句,你可以把嵌套的if語句寫在另一個函數(shù)中)而且,在用 if 語句時,最好配合 else 使用,防止出現(xiàn)邏輯上的錯誤。
14、pass:pass的意思就是什么都不做。用途及理解:當我們寫一個軟件的框架的時候,具體方法啊,類啊之類的都不寫,等著后續(xù)工作在做。那么就在方法和類里面加上pass,那樣編譯起來就不會報錯了!就像這樣:
15、yield:用起來和return很像,但它返回的是一個生成器。
#理解yield
def test_yield(n):
for i in range(n):
yield i*2#每次的運算結(jié)果都返回
for j in test_yield(8):
print j,”:”,
print u”結(jié)束理解yield”
#利用yield輸出斐波那契數(shù)列
##########
def fab(max):
a,b = 0,1
while a < max:
yield a
a, b = b, a+b
print u”斐波那契數(shù)列!”
for i in fab(20):
print i,”,”,
輸出結(jié)果:
0 : 2 : 4 : 6 : 8 : 10 : 12 : 14 : 結(jié)束理解yield
斐波那契數(shù)列!
0 , 1 , 1 , 2 , 3 , 5 , 8 , 13 ,
16、break:作用是終止循環(huán),程序走到break的地方就是循環(huán)結(jié)束的時候。(有點強行終止的意思)注意:如果從for或while循環(huán)中終止(break)之后 ,else語句不執(zhí)行。
17、except:和try一起使用,用來捕獲異常。
該種Python異常處理語法的規(guī)則是:
◆執(zhí)行try下的語句,如果引發(fā)異常,則執(zhí)行過程會跳到第一個except語句。
◆如果第一個except中定義的異常與引發(fā)的異常匹配,則執(zhí)行該except中的語句。
◆如果引發(fā)的異常不匹配第一個except,則會搜索第二個 except,允許編寫的except數(shù)量沒有限制。
◆如果所有的except都不匹配,則異常會傳遞到下一個調(diào)用本代碼的最高層try代碼中。
◆ 如果沒有發(fā)生異常,則執(zhí)行else塊代碼。
#理解except
try:
num = 5/0
except:
print u”計算出錯”
try:
f = open(“file.txt”,”r”) #如果該文件不存在
except IOError, e: #捕獲IO異常
print u”IO錯誤!”
print e #輸出錯誤信息,這里e是錯誤信息
輸出結(jié)果:
計算出錯
IO錯誤!
[Errno 2] No such file or directory: ‘file.txt’
18、import:用來導入模塊,有時這樣用from….import
19、print:輸出
20、class:定義類
21、exec:exec語句用來執(zhí)行儲存在字符串或者文件中的python語句。可以生成一個包含python代碼的字符串,然后使用exec語句執(zhí)行這些語句。
22、in:查找列表中是否包含某個元素,或者字符串a(chǎn)是否包含字符串b。需要注意的是:不可以查看list1是否包含list2。代碼如下:
#理解in
first_list = [1, 2]
second_list = [1, 2, 3]
element = 1
red = ‘red’
red_clothes = “red clothes”
print red in red_clothes #true
print first_list in second_list #false
print element in first_list #true
輸出結(jié)果為:
True
False
True
23、raise:raise可以顯示地引發(fā)異常。一旦執(zhí)行raise語句,后面的代碼就不執(zhí)行了
#理解raise
try:
raise IOError #這里可以raise一個自定義的錯誤類。那樣就叫做自定義異常了
print u”是否執(zhí)行?” #不執(zhí)行
except IOError:
print “IOError test raise”
輸出結(jié)果如下:
IOError test raise
24、continue:跳過 continue 后面循環(huán)塊中的語句,繼續(xù)進行下一輪循環(huán)。
25、finally:看到 finally 語句,必然執(zhí)行 finally 語句的代碼塊。
26、is:Python中的對象包含三要素:id、type、value
id 用來唯一標識一個對象,type 標識對象的類型,value 是對象的值
is判斷的是a對象是否就是b對象,是通過id來判斷的==判斷的是a對象的值是否和b對象的值相等,是通過value來判斷的
#理解is
e = 1
es = 1.0
ess = 1
print u”””is就是比對id的值,看是否指向同一對象,
這里需要注意的是:同一對象,不是值相等就是同一對象。”””
print id(e)
print id(es)
print id(ess)
27、return:用于跳出函數(shù),也可以在跳出的同時返回一個值。
28、def:用于定義函數(shù)
29、for:for….in 一起使用:它在一序列的對象上遞歸,就是遍歷隊列中的每個項目。也可以遍歷列表(目前在列表中使用過)
30、lambda:即匿名函數(shù),不用想給函數(shù)起什么名字。提升了代碼的簡潔程度。如:
g = lambda :”lambda test.”
print g()
num1 = lambda x, y=1:x + y
print num1(1) #多個變量的時候,可以不給有默認值的變量傳值
print num1(10,10) #值得注意的是,如果y沒有默認值而且不給它傳值的話報錯!
輸出結(jié)果:
lambda test.
2
20
31、try:出現(xiàn)在異常處理中,使用格式為:try…except,try中放想要執(zhí)行的語句,except捕獲異常
總結(jié)
以上是生活随笔為你收集整理的python关键字的意思_python 关键字(Keywords)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: elementui分页组件按钮样式修改_
- 下一篇: 三维数据平滑处理_关于CAD三维对象建模