小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Python基礎(chǔ)語法總結(jié)

 hol住 2019-07-17

1.Python標(biāo)識符

在 Python 里,標(biāo)識符有字母、數(shù)字、下劃線組成。

在 Python 中,所有標(biāo)識符可以包括英文、數(shù)字以及下劃線(_),但不能以數(shù)字開頭。

Python 中的標(biāo)識符是區(qū)分大小寫的。

以下劃線開頭的標(biāo)識符是有特殊意義的。以單下劃線開頭 _foo 的代表不能直接訪問的類屬性,需通過類提供的接口進(jìn)行訪問,不能用 from xxx import * 而導(dǎo)入;

以雙下劃線開頭的 __foo 代表類的私有成員;以雙下劃線開頭和結(jié)尾的 __foo__ 代表 Python 里特殊方法專用的標(biāo)識,如 __init__() 代表類的構(gòu)造函數(shù)。

2.Python有五個(gè)標(biāo)準(zhǔn)的數(shù)據(jù)類型

  • Numbers(數(shù)字)

  • String(字符串)

  • List(列表)

  • Tuple(元組)

  • Dictionary(字典)

Python支持四種不同的數(shù)字類型:

  • int(有符號整型)

  • long(長整型[也可以代表八進(jìn)制和十六進(jìn)制])

  • float(浮點(diǎn)型)

  • complex(復(fù)數(shù))

python的字串列表有2種取值順序:

  • 從左到右索引默認(rèn)0開始的,最大范圍是字符串長度少1

  • 從右到左索引默認(rèn)-1開始的,最大范圍是字符串開頭

List(列表) 是 Python 中使用最頻繁的數(shù)據(jù)類型。

  • 列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)實(shí)現(xiàn)。它支持字符,數(shù)字,字符串甚至可以包含列表(即嵌套)。

  • 列表用 [ ] 標(biāo)識,是 python 最通用的復(fù)合數(shù)據(jù)類型。

  • 列表中值的切割也可以用到變量 [頭下標(biāo):尾下標(biāo)] ,就可以截取相應(yīng)的列表,從左到右索引默認(rèn) 0 開始,從右到左索引默認(rèn) -1 開始,下標(biāo)可以為空表示取到頭或尾。

  • 加號 + 是列表連接運(yùn)算符,星號 * 是重復(fù)操作。

元組是另一個(gè)數(shù)據(jù)類型,類似于List(列表)。

  • 元組用"()"標(biāo)識。內(nèi)部元素用逗號隔開。但是元組不能二次賦值,相當(dāng)于只讀列表。

字典(dictionary)是除列表以外python之中最靈活的內(nèi)置數(shù)據(jù)結(jié)構(gòu)類型。

  • 列表是有序的對象結(jié)合,字典是無序的對象集合。兩者之間的區(qū)別在于:字典當(dāng)中的元素是通過鍵來存取的,而不是通過偏移存取。

  • 字典用"{ }"標(biāo)識。字典由索引(key)和它對應(yīng)的值value組成。

3.Python數(shù)據(jù)類型轉(zhuǎn)換

有時(shí)候,我們需要對數(shù)據(jù)內(nèi)置的類型進(jìn)行轉(zhuǎn)換,數(shù)據(jù)類型的轉(zhuǎn)換,你只需要將數(shù)據(jù)類型作為函數(shù)名即可。

以下幾個(gè)內(nèi)置的函數(shù)可以執(zhí)行數(shù)據(jù)類型之間的轉(zhuǎn)換。這些函數(shù)返回一個(gè)新的對象,表示轉(zhuǎn)換的值。

函數(shù)描述

int(x [,base])

將x轉(zhuǎn)換為一個(gè)整數(shù)

long(x [,base] )

將x轉(zhuǎn)換為一個(gè)長整數(shù)

float(x)

將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù)

complex(real [,imag])

創(chuàng)建一個(gè)復(fù)數(shù)

str(x)

將對象 x 轉(zhuǎn)換為字符串

repr(x)

將對象 x 轉(zhuǎn)換為表達(dá)式字符串

eval(str)

用來計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對象

tuple(s)

將序列 s 轉(zhuǎn)換為一個(gè)元組

list(s)

將序列 s 轉(zhuǎn)換為一個(gè)列表

set(s)

轉(zhuǎn)換為可變集合

dict(d)

創(chuàng)建一個(gè)字典。d 必須是一個(gè)序列 (key,value)元組。

frozenset(s)

轉(zhuǎn)換為不可變集合

chr(x)

將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符

unichr(x)

將一個(gè)整數(shù)轉(zhuǎn)換為Unicode字符

ord(x)

將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值

hex(x)

將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串

oct(x)

將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串

  


4.Python 運(yùn)算符

  • 算術(shù)運(yùn)算符

  • 比較(關(guān)系)運(yùn)算符

  • 賦值運(yùn)算符

  • 邏輯運(yùn)算符

  • 位運(yùn)算符

  • 成員運(yùn)算符

  • 身份運(yùn)算符

  • 運(yùn)算符優(yōu)先級

python算術(shù)運(yùn)算符

運(yùn)算符描述實(shí)例
+加 - 兩個(gè)對象相加a + b 輸出結(jié)果 30
-減 - 得到負(fù)數(shù)或是一個(gè)數(shù)減去另一個(gè)數(shù)a - b 輸出結(jié)果 -10
*乘 - 兩個(gè)數(shù)相乘或是返回一個(gè)被重復(fù)若干次的字符串a * b 輸出結(jié)果 200
/除 - x除以yb / a 輸出結(jié)果 2
%取模 - 返回除法的余數(shù)b % a 輸出結(jié)果 0
**冪 - 返回x的y次冪a**b 為10的20次方, 輸出結(jié)果 100000000000000000000
//取整除 - 返回商的整數(shù)部分9//2 輸出結(jié)果 4 , 9.0//2.0 輸出結(jié)果 4.0

①:python比較運(yùn)算符

以下假設(shè)變量a為10,變量b為20:

運(yùn)算符描述實(shí)例
==等于 - 比較對象是否相等(a == b) 返回 False。
!=不等于 - 比較兩個(gè)對象是否不相等(a != b) 返回 true.
<>不等于 - 比較兩個(gè)對象是否不相等(a <> b) 返回 true。這個(gè)運(yùn)算符類似 != 。
>大于 - 返回x是否大于y(a > b) 返回 False。
<小于 - 返回x是否小于y。所有比較運(yùn)算符返回1表示真,返回0表示假。這分別與特殊的變量True和False等價(jià)。注意,這些變量名的大寫。(a < b) 返回 true。
>=大于等于 - 返回x是否大于等于y。(a >= b) 返回 False。
<=小于等于 - 返回x是否小于等于y。(a <= b) 返回 true。

②:Python賦值運(yùn)算符

以下假設(shè)變量a為10,變量b為20:

運(yùn)算符描述實(shí)例
=簡單的賦值運(yùn)算符c = a + b 將 a + b 的運(yùn)算結(jié)果賦值為 c
+=加法賦值運(yùn)算符c += a 等效于 c = c + a
-=減法賦值運(yùn)算符c -= a 等效于 c = c - a
*=乘法賦值運(yùn)算符c *= a 等效于 c = c * a
/=除法賦值運(yùn)算符c /= a 等效于 c = c / a
%=取模賦值運(yùn)算符c %= a 等效于 c = c % a
**=冪賦值運(yùn)算符c **= a 等效于 c = c ** a
//=取整除賦值運(yùn)算符c //= a 等效于 c = c // a

③:Python位運(yùn)算符

下表中變量 a 為 60,b 為 13,二進(jìn)制格式如下:

a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a  = 1100 0011
運(yùn)算符描述實(shí)例
&按位與運(yùn)算符:參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位的結(jié)果為1,否則為0(a & b) 輸出結(jié)果 12 ,二進(jìn)制解釋: 0000 1100
|按位或運(yùn)算符:只要對應(yīng)的二個(gè)二進(jìn)位有一個(gè)為1時(shí),結(jié)果位就為1。(a | b) 輸出結(jié)果 61 ,二進(jìn)制解釋: 0011 1101
^按位異或運(yùn)算符:當(dāng)兩對應(yīng)的二進(jìn)位相異時(shí),結(jié)果為1(a ^ b) 輸出結(jié)果 49 ,二進(jìn)制解釋: 0011 0001
~按位取反運(yùn)算符:對數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把1變?yōu)?,把0變?yōu)?(~a ) 輸出結(jié)果 -61 ,二進(jìn)制解釋: 1100 0011, 在一個(gè)有符號二進(jìn)制數(shù)的補(bǔ)碼形式。
<<左移動(dòng)運(yùn)算符:運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由"<<"右邊的數(shù)指定移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0。a << 2 輸出結(jié)果 240 ,二進(jìn)制解釋: 1111 0000
>>右移動(dòng)運(yùn)算符:把">>"左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,">>"右邊的數(shù)指定移動(dòng)的位數(shù)a >> 2 輸出結(jié)果 15 ,二進(jìn)制解釋: 0000 1111

④:Python邏輯運(yùn)算符

Python語言支持邏輯運(yùn)算符,以下假設(shè)變量 a 為 10, b為 20:

運(yùn)算符邏輯表達(dá)式描述實(shí)例
andx and y布爾"與" - 如果 x 為 False,x and y 返回 False,否則它返回 y 的計(jì)算值。(a and b) 返回 20。
orx or y布爾"或" - 如果 x 是非 0,它返回 x 的值,否則它返回 y 的計(jì)算值。(a or b) 返回 10。
notnot x布爾"非" - 如果 x 為 True,返回 False 。如果 x 為 False,它返回 True。not(a and b) 返回 False

⑤:Python成員運(yùn)算符

除了以上的一些運(yùn)算符之外,Python還支持成員運(yùn)算符,測試實(shí)例中包含了一系列的成員,包括字符串,列表或元組。

運(yùn)算符描述實(shí)例
in如果在指定的序列中找到值返回 True,否則返回 False。x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in如果在指定的序列中沒有找到值返回 True,否則返回 False。x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。

⑥:Python身份運(yùn)算符

身份運(yùn)算符用于比較兩個(gè)對象的存儲單元

運(yùn)算符描述實(shí)例
isis 是判斷兩個(gè)標(biāo)識符是不是引用自一個(gè)對象x is y, 類似 id(x) == id(y) , 如果引用的是同一個(gè)對象則返回 True,否則返回 False
is notis not 是判斷兩個(gè)標(biāo)識符是不是引用自不同對象x is not y , 類似 id(a) != id(b)。如果引用的不是同一個(gè)對象則返回結(jié)果 True,否則返回 False。

注:is 與 == 區(qū)別:

     is 用于判斷兩個(gè)變量引用對象是否為同一個(gè), == 用于判斷引用變量的值是否相等。

5:Python 循環(huán)語句

Python提供了for循環(huán)和while循環(huán)(在Python中沒有do..while循環(huán)):

循環(huán)類型描述
while 循環(huán)在給定的判斷條件為 true 時(shí)執(zhí)行循環(huán)體,否則退出循環(huán)體。
for 循環(huán)重復(fù)執(zhí)行語句
嵌套循環(huán)你可以在while循環(huán)體中嵌套for循環(huán)

循環(huán)控制語句可以更改語句執(zhí)行的順序。Python支持以下循環(huán)控制語句:

控制語句描述
break 語句在語句塊執(zhí)行過程中終止循環(huán),并且跳出整個(gè)循環(huán)
continue 語句在語句塊執(zhí)行過程中終止當(dāng)前循環(huán),跳出該次循環(huán),執(zhí)行下一次循環(huán)。
pass 語句pass是空語句,是為了保持程序結(jié)構(gòu)的完整性。

6:Python Number(數(shù)字)

Python 支持四種不同的數(shù)值類型:

  • 整型(Int) - 通常被稱為是整型或整數(shù),是正或負(fù)整數(shù),不帶小數(shù)點(diǎn)。

  • 長整型(long integers) - 無限大小的整數(shù),整數(shù)最后是一個(gè)大寫或小寫的L。

  • 浮點(diǎn)型(floating point real values) - 浮點(diǎn)型由整數(shù)部分與小數(shù)部分組成,浮點(diǎn)型也可以使用科學(xué)計(jì)數(shù)法表示(2.5e2 = 2.5 x 102 = 250)

  • 復(fù)數(shù)(complex numbers) - 復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成,可以用a + bj,或者complex(a,b)表示, 復(fù)數(shù)的實(shí)部a和虛部b都是浮點(diǎn)型。

    注:長整型也可以使用小寫"L",但是還是建議您使用大寫"L",避免與數(shù)字"1"混淆。Python使用"L"來顯示長整型。

  •   Python還支持復(fù)數(shù),復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成,可以用a + bj,或者complex(a,b)表示, 復(fù)數(shù)的實(shí)部a和虛部b都是浮點(diǎn)型

Python Number類型轉(zhuǎn)換:

int(x [,base ])         將x轉(zhuǎn)換為一個(gè)整數(shù)  
long(x [,base ])        將x轉(zhuǎn)換為一個(gè)長整數(shù)  
float(x )               將x轉(zhuǎn)換到一個(gè)浮點(diǎn)數(shù)  
complex(real [,imag ])  創(chuàng)建一個(gè)復(fù)數(shù)  
str(x )                 將對象 x 轉(zhuǎn)換為字符串  
repr(x )                將對象 x 轉(zhuǎn)換為表達(dá)式字符串  
eval(str )              用來計(jì)算在字符串中的有效Python表達(dá)式,并返回一個(gè)對象  
tuple(s )               將序列 s 轉(zhuǎn)換為一個(gè)元組  
list(s )                將序列 s 轉(zhuǎn)換為一個(gè)列表  
chr(x )                 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)字符  
unichr(x )              將一個(gè)整數(shù)轉(zhuǎn)換為Unicode字符  
ord(x )                 將一個(gè)字符轉(zhuǎn)換為它的整數(shù)值  
hex(x )                 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)十六進(jìn)制字符串  
oct(x )                 將一個(gè)整數(shù)轉(zhuǎn)換為一個(gè)八進(jìn)制字符串

python數(shù)學(xué)函數(shù):
函數(shù)返回值 ( 描述 )
abs(x)返回?cái)?shù)字的絕對值,如abs(-10) 返回 10
ceil(x)返回?cái)?shù)字的上入整數(shù),如math.ceil(4.1) 返回 5
cmp(x, y)如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x)返回e的x次冪(ex),如math.exp(1) 返回2.718281828459045
fabs(x)返回?cái)?shù)字的絕對值,如math.fabs(-10) 返回10.0
floor(x)返回?cái)?shù)字的下舍整數(shù),如math.floor(4.9)返回 4
log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)返回以10為基數(shù)的x的對數(shù),如math.log10(100)返回 2.0
max(x1, x2,...)返回給定參數(shù)的最大值,參數(shù)可以為序列。
min(x1, x2,...)返回給定參數(shù)的最小值,參數(shù)可以為序列。
modf(x)返回x的整數(shù)部分與小數(shù)部分,兩部分的數(shù)值符號與x相同,整數(shù)部分以浮點(diǎn)型表示。
pow(x, y)x**y 運(yùn)算后的值。
round(x [,n])返回浮點(diǎn)數(shù)x的四舍五入值,如給出n值,則代表舍入到小數(shù)點(diǎn)后的位數(shù)。
sqrt(x)返回?cái)?shù)字x的平方根,數(shù)字可以為負(fù)數(shù),返回類型為實(shí)數(shù),如math.sqrt(4)返回 2+0j





















Python隨機(jī)函數(shù):

隨機(jī)數(shù)可以用于數(shù)學(xué),游戲,安全等領(lǐng)域中,還經(jīng)常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

Python包含以下常用隨機(jī)數(shù)函數(shù):

函數(shù)描述
choice(seq)從序列的元素中隨機(jī)挑選一個(gè)元素,比如random.choice(range(10)),從0到9中隨機(jī)挑選一個(gè)整數(shù)。
randrange ([start,] stop [,step])從指定范圍內(nèi),按指定基數(shù)遞增的集合中獲取一個(gè)隨機(jī)數(shù),基數(shù)缺省值為1
random()隨機(jī)生成下一個(gè)實(shí)數(shù),它在[0,1)范圍內(nèi)。
seed([x])改變隨機(jī)數(shù)生成器的種子seed。如果你不了解其原理,你不必特別去設(shè)定seed,Python會幫你選擇seed。
shuffle(lst)將序列的所有元素隨機(jī)排序
uniform(x, y)隨機(jī)生成下一個(gè)實(shí)數(shù),它在[x,y]范圍內(nèi)。












Python三角函數(shù):

Python包括以下三角函數(shù):

函數(shù)描述
acos(x)返回x的反余弦弧度值。
asin(x)返回x的反正弦弧度值。
atan(x)返回x的反正切弧度值。
atan2(y, x)返回給定的 X 及 Y 坐標(biāo)值的反正切值。
cos(x)返回x的弧度的余弦值。
hypot(x, y)返回歐幾里德范數(shù) sqrt(x*x + y*y)。
sin(x)返回的x弧度的正弦值。
tan(x)返回x弧度的正切值。
degrees(x)將弧度轉(zhuǎn)換為角度,如degrees(math.pi/2) , 返回90.0
radians(x)將角度轉(zhuǎn)換為弧度















Python數(shù)學(xué)常量:
常量描述
pi數(shù)學(xué)常量 pi(圓周率,一般以π來表示)
e數(shù)學(xué)常量 e,e即自然常數(shù)(自然常數(shù))。





7:Python字符串
Python轉(zhuǎn)義字符:

在需要在字符中使用特殊字符時(shí),python用反斜杠(\)轉(zhuǎn)義字符。如下表:

轉(zhuǎn)義字符描述
\(在行尾時(shí))續(xù)行符
\\反斜杠符號
\'單引號
\"雙引號
\a響鈴
\b退格(Backspace)
\e轉(zhuǎn)義
\000
\n換行
\v縱向制表符
\t橫向制表符
\r回車
\f換頁
\oyy八進(jìn)制數(shù),yy代表的字符,例如:\o12代表換行
\xyy十六進(jìn)制數(shù),yy代表的字符,例如:\x0a代表換行
\other其它的字符以普通格式輸出























Python字符串運(yùn)算符:

下表實(shí)例變量 a 值為字符串 "Hello",b 變量值為 "Python":

操作符描述實(shí)例
+字符串連接
>>>a + b 'HelloPython'
*重復(fù)輸出字符串
>>>a * 2 'HelloHello'
[]通過索引獲取字符串中字符
>>>a[1] 'e'
[ : ]截取字符串中的一部分
>>>a[1:4] 'ell'
in成員運(yùn)算符 - 如果字符串中包含給定的字符返回 True
>>>"H" in a True
not in成員運(yùn)算符 - 如果字符串中不包含給定的字符返回 True
>>>"M" not in a True
r/R原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思來使用,沒有轉(zhuǎn)義特殊或不能打印的字符。 原始字符串除在字符串的第一個(gè)引號前加上字母"r"(可以大小寫)以外,與普通字符串有著幾乎完全相同的語法。
>>>print r'\n' \n >>> print R'\n' \n
%格式字符串請看下一章節(jié)















Python字符串格式化:

Python 支持格式化字符串的輸出 。盡管這樣可能會用到非常復(fù)雜的表達(dá)式,但最基本的用法是將一個(gè)值插入到一個(gè)有字符串格式符 %s 的字符串中。

在 Python 中,字符串格式化使用與 C 中 sprintf 函數(shù)一樣的語法。

如下實(shí)例:

#!/usr/bin/python

print "My name is %s and weight is %d kg!" % ('Zara', 21)

以上實(shí)例輸出結(jié)果:

My name is Zara and weight is 21 kg!

python字符串格式化符號:

   符   號描述
      %c 格式化字符及其ASCII碼
      %s 格式化字符串
      %d 格式化整數(shù)
      %u 格式化無符號整型
      %o 格式化無符號八進(jìn)制數(shù)
      %x 格式化無符號十六進(jìn)制數(shù)
      %X 格式化無符號十六進(jìn)制數(shù)(大寫)
      %f 格式化浮點(diǎn)數(shù)字,可指定小數(shù)點(diǎn)后的精度
      %e 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)
      %E 作用同%e,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù)
      %g %f和%e的簡寫
      %G %f 和 %E 的簡寫
      %p 用十六進(jìn)制數(shù)格式化變量的地址
 

















8.Python列表:

Python包含以下函數(shù):

序號函數(shù)
1cmp(list1, list2)
比較兩個(gè)列表的元素
2len(list)
列表元素個(gè)數(shù)
3max(list)
返回列表元素最大值
4min(list)
返回列表元素最小值
5list(seq)
將元組轉(zhuǎn)換為列表

Python包含以下方法:

序號方法
1list.append(obj)
在列表末尾添加新的對象
2list.count(obj)
統(tǒng)計(jì)某個(gè)元素在列表中出現(xiàn)的次數(shù)
3list.extend(seq)
在列表末尾一次性追加另一個(gè)序列中的多個(gè)值(用新列表擴(kuò)展原來的列表)
4list.index(obj)
從列表中找出某個(gè)值第一個(gè)匹配項(xiàng)的索引位置
5list.insert(index, obj)
將對象插入列表
6list.pop(obj=list[-1])
移除列表中的一個(gè)元素(默認(rèn)最后一個(gè)元素),并且返回該元素的值
7list.remove(obj)
移除列表中某個(gè)值的第一個(gè)匹配項(xiàng)
8list.reverse()
反向列表中元素
9list.sort([func])
對原列表進(jìn)行排序






















9.Python元組

Python的元組(tuple)與列表類似,不同之處在于元組的元素不能修改。

元組使用小括號,列表使用方括號。

元組內(nèi)置函數(shù):

Python元組包含了以下內(nèi)置函數(shù)

序號方法及描述
1cmp(tuple1, tuple2)
比較兩個(gè)元組元素。
2len(tuple)
計(jì)算元組元素個(gè)數(shù)。
3max(tuple)
返回元組中元素最大值。
4min(tuple)
返回元組中元素最小值。
5tuple(seq)
將列表轉(zhuǎn)換為元組。














10.Python字典(dictionary)

字典是另一種可變?nèi)萜髂P?,且可存儲任意類型對象?/p>

字典的每個(gè)鍵值(key=>value)對用冒號(:)分割,每個(gè)對之間用逗號(,)分割,整個(gè)字典包括在花括號({})中 

字典內(nèi)置函數(shù)及方法:

Python字典包含了以下內(nèi)置函數(shù):

序號函數(shù)及描述
1cmp(dict1, dict2)
比較兩個(gè)字典元素。
2len(dict)
計(jì)算字典元素個(gè)數(shù),即鍵的總數(shù)。
3str(dict)
輸出字典可打印的字符串表示。
4type(variable)
返回輸入的變量類型,如果變量是字典就返回字典類型。

Python字典包含了以下內(nèi)置方法:

序號函數(shù)及描述
1dict.clear()
刪除字典內(nèi)所有元素
2dict.copy()
返回一個(gè)字典的淺復(fù)制
3dict.fromkeys(seq[, val]))
創(chuàng)建一個(gè)新字典,以序列 seq 中元素做字典的鍵,val 為字典所有鍵對應(yīng)的初始值
4dict.get(key, default=None)
返回指定鍵的值,如果值不在字典中返回default值
5dict.has_key(key)
如果鍵在字典dict里返回true,否則返回false
6dict.items()
以列表返回可遍歷的(鍵, 值) 元組數(shù)組
7dict.keys()
以列表返回一個(gè)字典所有的鍵
8dict.setdefault(key, default=None)
和get()類似, 但如果鍵不存在于字典中,將會添加鍵并將值設(shè)為default
9dict.update(dict2)
把字典dict2的鍵/值對更新到dict里
10dict.values()
以列表返回字典中的所有值
11pop(key[,default])
刪除字典給定鍵 key 所對應(yīng)的值,返回值為被刪除的值。key值必須給出。 否則,返回default值。
12popitem()
隨機(jī)返回并刪除字典中的一對鍵和值。




























11.匿名函數(shù)lambda

python 使用 lambda 來創(chuàng)建匿名函數(shù)。

  • lambda只是一個(gè)表達(dá)式,函數(shù)體比def簡單很多。

  • lambda的主體是一個(gè)表達(dá)式,而不是一個(gè)代碼塊。僅僅能在lambda表達(dá)式中封裝有限的邏輯進(jìn)去。

  • lambda函數(shù)擁有自己的命名空間,且不能訪問自有參數(shù)列表之外或全局命名空間里的參數(shù)。

  • 雖然lambda函數(shù)看起來只能寫一行,卻不等同于C或C++的內(nèi)聯(lián)函數(shù),后者的目的是調(diào)用小函數(shù)時(shí)不占用棧內(nèi)存從而增加運(yùn)行效率。

如:

sum = lambda arg1, arg2: arg1 + arg2;
print "相加后的值為 : ", sum( 10, 20 )  //輸出30

12.python import語句

 

  • From...import語句

    Python 的 from 語句讓你從模塊中導(dǎo)入一個(gè)指定的部分到當(dāng)前命名空間中。語法如下:

    from modname import name1[, name2[, ... nameN]]

    例如,要導(dǎo)入模塊 fib 的 fibonacci 函數(shù),使用如下語句:

    from fib import fibonacci

    這個(gè)聲明不會把整個(gè) fib 模塊導(dǎo)入到當(dāng)前的命名空間中,它只會將 fib 里的 fibonacci 單個(gè)引入到執(zhí)行這個(gè)聲明的模塊的全局符號表。

  • From...import*語句

    把一個(gè)模塊的所有內(nèi)容全都導(dǎo)入到當(dāng)前的命名空間也是可行的,只需使用如下聲明:

    from modname import *

    這提供了一個(gè)簡單的方法來導(dǎo)入一個(gè)模塊中的所有項(xiàng)目。然而這種聲明不該被過多地使用。

    例如我們想一次性引入 math 模塊中所有的東西,語句如下:

    from math import *

13.Python文件操作
  • 打開和關(guān)閉文件

現(xiàn)在,您已經(jīng)可以向標(biāo)準(zhǔn)輸入和輸出進(jìn)行讀寫。現(xiàn)在,來看看怎么讀寫實(shí)際的數(shù)據(jù)文件。

Python 提供了必要的函數(shù)和方法進(jìn)行默認(rèn)情況下的文件基本操作。你可以用 file 對象做大部分的文件操作。

 

  • open函數(shù)

你必須先用Python內(nèi)置的open()函數(shù)打開一個(gè)文件,創(chuàng)建一個(gè)file對象,相關(guān)的方法才可以調(diào)用它進(jìn)行讀寫。

語法:

file object = open(file_name [, access_mode][, buffering])

各個(gè)參數(shù)的細(xì)節(jié)如下:

  • file_name:file_name變量是一個(gè)包含了你要訪問的文件名稱的字符串值。

  • access_mode:access_mode決定了打開文件的模式:只讀,寫入,追加等。所有可取值見如下的完全列表。這個(gè)參數(shù)是非強(qiáng)制的,默認(rèn)文件訪問模式為只讀(r)。

  • buffering:如果buffering的值被設(shè)為0,就不會有寄存。如果buffering的值取1,訪問文件時(shí)會寄存行。如果將buffering的值設(shè)為大于1的整數(shù),表明了這就是的寄存區(qū)的緩沖大小。如果取負(fù)值,寄存區(qū)的緩沖大小則為系統(tǒng)默認(rèn)。

不同模式打開文件的完全列表:

模式描述
r以只讀方式打開文件。文件的指針將會放在文件的開頭。這是默認(rèn)模式。
rb以二進(jìn)制格式打開一個(gè)文件用于只讀。文件指針將會放在文件的開頭。這是默認(rèn)模式。
r+打開一個(gè)文件用于讀寫。文件指針將會放在文件的開頭。
rb+以二進(jìn)制格式打開一個(gè)文件用于讀寫。文件指針將會放在文件的開頭。
w打開一個(gè)文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
wb以二進(jìn)制格式打開一個(gè)文件只用于寫入。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
w+打開一個(gè)文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
wb+以二進(jìn)制格式打開一個(gè)文件用于讀寫。如果該文件已存在則將其覆蓋。如果該文件不存在,創(chuàng)建新文件。
a打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。也就是說,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入。
ab以二進(jìn)制格式打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。也就是說,新的內(nèi)容將會被寫入到已有內(nèi)容之后。如果該文件不存在,創(chuàng)建新文件進(jìn)行寫入。
a+打開一個(gè)文件用于讀寫。如果該文件已存在,文件指針將會放在文件的結(jié)尾。文件打開時(shí)會是追加模式。如果該文件不存在,創(chuàng)建新文件用于讀寫。
ab+以二進(jìn)制格式打開一個(gè)文件用于追加。如果該文件已存在,文件指針將會放在文件的結(jié)尾。如果該文件不存在,創(chuàng)建新文件用于讀寫。

 

  • File對象的屬性

一個(gè)文件被打開后,你有一個(gè)file對象,你可以得到有關(guān)該文件的各種信息。

以下是和file對象相關(guān)的所有屬性的列表:

屬性描述
file.closed返回true如果文件已被關(guān)閉,否則返回false。
file.mode返回被打開文件的訪問模式。
file.name返回文件的名稱。
file.softspace如果用print輸出后,必須跟一個(gè)空格符,則返回false。否則返回true。

 

  • close()方法

File 對象的 close()方法刷新緩沖區(qū)里任何還沒寫入的信息,并關(guān)閉該文件,這之后便不能再進(jìn)行寫入。

當(dāng)一個(gè)文件對象的引用被重新指定給另一個(gè)文件時(shí),Python 會關(guān)閉之前的文件。用 close()方法關(guān)閉文件是一個(gè)很好的習(xí)慣。

語法:

fileObject.close();

 

  • write()方法

write()方法可將任何字符串寫入一個(gè)打開的文件。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。

write()方法不會在字符串的結(jié)尾添加換行符('\n'):

語法:

fileObject.write(string);
  • read()方法

read()方法從一個(gè)打開的文件中讀取一個(gè)字符串。需要重點(diǎn)注意的是,Python字符串可以是二進(jìn)制數(shù)據(jù),而不是僅僅是文字。

語法:

fileObject.read([count]);

 

  • 文件定位

tell()方法告訴你文件內(nèi)的當(dāng)前位置;換句話說,下一次的讀寫會發(fā)生在文件開頭這么多字節(jié)之后。

seek(offset [,from])方法改變當(dāng)前文件的位置。Offset變量表示要移動(dòng)的字節(jié)數(shù)。From變量指定開始移動(dòng)字節(jié)的參考位置。

如果from被設(shè)為0,這意味著將文件的開頭作為移動(dòng)字節(jié)的參考位置。如果設(shè)為1,則使用當(dāng)前的位置作為參考位置。如果它被設(shè)為2,那么該文件的末尾將作為參考位置。

 

  • 重命名和刪除文件

Python的os模塊提供了幫你執(zhí)行文件處理操作的方法,比如重命名和刪除文件。

要使用這個(gè)模塊,你必須先導(dǎo)入它,然后才可以調(diào)用相關(guān)的各種功能。

 

      remove方法

    你可以用remove()方法刪除文件,需要提供要?jiǎng)h除的文件名作為參數(shù)。

 

  • Python里的目錄

所有文件都包含在各個(gè)不同的目錄下,不過Python也能輕松處理。os模塊有許多方法能幫你創(chuàng)建,刪除和更改目錄。

          1.mkdir()方法

可以使用os模塊的mkdir()方法在當(dāng)前目錄下創(chuàng)建新的目錄們。你需要提供一個(gè)包含了要?jiǎng)?chuàng)建的目錄名稱的參數(shù)。

語法:

os.mkdir("newdir")

         2.chdir()方法

可以用chdir()方法來改變當(dāng)前的目錄。chdir()方法需要的一個(gè)參數(shù)是你想設(shè)成當(dāng)前目錄的目錄名稱。

語法:

os.chdir("newdir")

         3.rmdir()方法

rmdir()方法刪除目錄,目錄名稱以參數(shù)傳遞。

在刪除這個(gè)目錄之前,它的所有內(nèi)容應(yīng)該先被清除。

語法:

os.rmdir('dirname')
  • 文件、目錄相關(guān)方法

三個(gè)重要的方法來源能對Windows和Unix操作系統(tǒng)上的文件及目錄進(jìn)行一個(gè)廣泛且實(shí)用的處理及操控,如下:

              File 對象方法: file對象提供了操作文件的一系列方法。

              OS 對象方法: 提供了處理文件及目錄的一系列方法。

14.Python File(文件)方法

file 對象使用 open 函數(shù)來創(chuàng)建,下表列出了 file 對象常用的函數(shù):

序號方法及描述
1

file.close()

關(guān)閉文件。關(guān)閉后文件不能再進(jìn)行讀寫操作。

2

file.flush()

刷新文件內(nèi)部緩沖,直接把內(nèi)部緩沖區(qū)的數(shù)據(jù)立刻寫入文件, 而不是被動(dòng)的等待輸出緩沖區(qū)寫入。

3

file.fileno()

返回一個(gè)整型的文件描述符(file descriptor FD 整型), 可以用在如os模塊的read方法等一些底層操作上。

4

file.isatty()

如果文件連接到一個(gè)終端設(shè)備返回 True,否則返回 False。

5

file.next()

返回文件下一行。

6

file.read([size])

從文件讀取指定的字節(jié)數(shù),如果未給定或?yàn)樨?fù)則讀取所有。

7

file.readline([size])

讀取整行,包括 "\n" 字符。

8

file.readlines([sizehint])

讀取所有行并返回列表,若給定sizeint>0,返回總和大約為sizeint字節(jié)的行, 實(shí)際讀取值可能比sizhint較大, 因?yàn)樾枰畛渚彌_區(qū)。

9

file.seek(offset[, whence])

設(shè)置文件當(dāng)前位置

10

file.tell()

返回文件當(dāng)前位置。

11

file.truncate([size])

截取文件,截取的字節(jié)通過size指定,默認(rèn)為當(dāng)前文件位置。

12

file.write(str)

將字符串寫入文件,沒有返回值。

13

file.writelines(sequence)

向文件寫入一個(gè)序列字符串列表,如果需要換行則要自己加入每行的換行符。

 
15.Python內(nèi)置函數(shù)

  內(nèi)置函數(shù)  
abs()divmod()input()open()staticmethod()
all()enumerate()int()ord()str()
any()eval()isinstance()pow()sum()
basestring()execfile()issubclass()print()super()
bin()file()iter()property()tuple()
bool()filter()len()range()type()
bytearray()float()list()raw_input()unichr()
callable()format()locals()reduce()unicode()
chr()frozenset()long()reload()vars()
classmethod()getattr()map()repr()xrange()
cmp()globals()max()reversed()zip()
compile()hasattr()memoryview()round()__import__()
complex()hash()min()set() 
delattr()help()next()setattr() 
dict()hex()object()slice() 
dir()id()oct()sorted()exec 內(nèi)置表達(dá)式

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多