第一阶段小结
python簡介
定義:是一個免費,開源,跨品臺,動態(tài),面向?qū)ο蟮木幊陶Z言
程序執(zhí)行方式:
函數(shù):表示一個功能,制作函數(shù)的人叫做函數(shù)定義著,使用函數(shù)的人叫做函數(shù)調(diào)用者
變量:
數(shù)據(jù)類型:
- 有十進制,二進制,八進制,十六進制
- 小整數(shù)對象池:cpython中整數(shù)-5到256,永遠存在小整數(shù)對象池中,不會釋放
- 對象池:緩存的機制
- 小數(shù),包含正數(shù),負數(shù),0.0
- 字面值1.5
- 科學(xué)計數(shù)法:1.5e1 ,05e-1
- 用于記錄文本信息
- 字面值:單引號,雙引號,三引號
- True表示真
- False表示假
- 由實部和虛部組成的數(shù)字
- 虛部以j或J結(jié)尾 5+3j? ? ?5j
數(shù)據(jù)類型轉(zhuǎn)換
- 轉(zhuǎn)為整形:int(數(shù)據(jù))
- 轉(zhuǎn)為浮點型:float(數(shù)據(jù))
- 轉(zhuǎn)為字符串: str(數(shù)據(jù))
- 轉(zhuǎn)為布爾 : bool(數(shù)據(jù))
- False: 0 , 0.0 ,'',None
- True:有值
運算符
- +
- -
- *
- / 小數(shù)除結(jié)果為float類型
- // 底板除:向下取整
- %取余數(shù)
- **冪運算
- and: 一假具假
- or:一真則真
- not:取反
- is:判斷兩個對象是否為一個對象
- is not :與is相反
range函數(shù)
作用:可以生成一系列整數(shù)的可迭代對象。
語法:range(開始點,結(jié)束點,間隔點)
break語句:跳出循環(huán)體,后面的代碼不在執(zhí)行
continue語句:跳過本次循環(huán),繼續(xù)下次循環(huán)
容器
- 列表推導(dǎo)式:變量= [表達式for變量in可迭代對象if條件]
- 推導(dǎo)式鑲嵌:[表達式for變量1 in可迭代對象1 for變量2 in可迭代對象2]
- 映射(哈希算法):通過鍵對應(yīng)值,每條記錄無序。
- 鍵必須唯一且不可變對象(字符串,數(shù)字,元組),值沒有限制
函數(shù)
定義:用于封裝一個特定的功能,表示一個行為,可以重復(fù)執(zhí)行的語句塊。
作用:提供程序的復(fù)用性,可維護性(代碼層次結(jié)構(gòu)更清晰)
返回值(return):方法定義著告訴調(diào)用的結(jié)果
函數(shù)參數(shù)
- 位置傳參:實參與形參的位置一次對應(yīng)
- 序列傳參:實參用*將序列拆解后與形參的位置依次對應(yīng)
- 關(guān)鍵字傳參:實參根據(jù)形參的名字進行對應(yīng)
- 字典傳參:實參用**將字典蔡姐與形參的名字進行對應(yīng)
- 默認(缺省)參數(shù):參數(shù) = 默認值
- 位置形參:def函數(shù)名(參數(shù))
- 星號元組形參:*args
- 命名關(guān)鍵字形參:強制實參使用關(guān)鍵字傳遞
- 雙星號字典形參 : **kwargs
可變/不可變類型再傳參時的區(qū)別:
作用域LEGB
局部變量:在方法體內(nèi)部定義的變量調(diào)用函數(shù)時才被創(chuàng)建,函數(shù)結(jié)束后自動銷毀
全局變量:定義再.py文件中的變量函數(shù)體內(nèi)部可以訪問,但不能直接修改,需要先聲明
模塊:包含一系列數(shù)據(jù),函數(shù),類的文件,通常以.py結(jié)尾
? ? 作用:讓一些相關(guān)的數(shù)據(jù),函數(shù),類的邏輯的組織再一起,使邏輯結(jié)構(gòu)更加清晰,有利于多人合作開發(fā)。
? ? 導(dǎo)入
-
- import 模塊名:將某模塊整體導(dǎo)入到當(dāng)前模塊中
- from 模塊名 import 成員名:將模塊內(nèi)的一個或多個成員導(dǎo)入到當(dāng)前模塊的作用域中
- from 模塊名import *:將模塊的所有成員導(dǎo)入到擋墻模塊
? ?加載過程:在模塊導(dǎo)入時,模塊的所有語句會執(zhí)行。如果一個模塊已經(jīng)導(dǎo)入,則再次導(dǎo)入時不會執(zhí)行模塊內(nèi)的語句
分類:
迭代:每一次對過程的重復(fù)稱為一次“迭代”,而每一次迭代得到的結(jié)果會作為下一次迭代的初始值
可迭代對象(iterable):具有__iter__函數(shù)的對象,可以返回迭代器對象
迭代器對象(iterator):可以被next()函數(shù)調(diào)用并返回下一個值的對象
說明:聚合對象通常是容器對象
作用:使用者只需要通過一種方式,便可簡潔明了的獲取聚合對象中各個元素,而無需了解其內(nèi)部結(jié)構(gòu)
生成器(generator):能夠動態(tài)(循環(huán)一次計算一次返回一次)提供數(shù)據(jù)的可迭代對象
作用:在循環(huán)過程中,按照某種算法推算數(shù)據(jù),不必創(chuàng)建容器存儲完整的結(jié)果,從而節(jié)省內(nèi)存空間,數(shù)據(jù)量越大,優(yōu)勢越明顯
生成器函數(shù):含有yield語句的函數(shù),返回值為生成器對象
函數(shù)式編程:用一系列函數(shù)解決問題
-
- 函數(shù)可以賦值給變量,賦值后變量綁定函數(shù)
- 允許將函數(shù)作為參數(shù)傳入另一個函數(shù)
- 允許函數(shù)返回一個函數(shù)
高階函數(shù):將函數(shù)作為參數(shù)或返回值的函數(shù)
函數(shù)作為參數(shù):將核心邏輯傳入方法體,使該方法的適用性更廣,體現(xiàn)了面向?qū)ο蟮拈_閉原則
lambda表達式:是一種匿名方法
作用:作為參數(shù)傳遞時語法簡潔,優(yōu)雅,代碼可讀性強,隨時創(chuàng)建和銷毀,減少程序耦合度
語法:變量 = lambda形參:方法體 方法體只能有一條語句,且不支持賦值語句
閉包:
三要素
定義:再一個函數(shù)內(nèi)部的函數(shù),用時內(nèi)部函數(shù)又引用了外部函數(shù)的變量
本質(zhì):閉包是將內(nèi)部函數(shù)和外部函數(shù)的執(zhí)行環(huán)境綁定再一起的地下
優(yōu)點:內(nèi)部函數(shù)可以使用外部變量
缺點:外部變量一直存在于內(nèi)存中,不會在調(diào)用結(jié)束后釋放,占用內(nèi)存
作用:實現(xiàn)Python裝飾器
?
轉(zhuǎn)載于:https://www.cnblogs.com/Acekr/p/11272437.html
總結(jié)
- 上一篇: Segment,Path,Ring和Po
- 下一篇: LoadRunner中的参数与变量