day6_總結(jié)

數(shù)據(jù)類型

int ,float,bool,complex(復(fù)數(shù)10+10j)
python2.x中還有l(wèi)ong
科學(xué)計數(shù)法得到的數(shù)是float。12e2 = 1200.0
優(yōu)先級:數(shù)學(xué)運算符>比較運算符>邏輯運算符>賦值運算符
數(shù)學(xué)運算符:

      • / % // **
        特別注意,如果運算結(jié)果是float,那么結(jié)果是不精確的,如
        print (2.4-2 ==0.4) #False,
        所以不能用以上這種方法來判讀一些問題

運算符

比較運算符:
> < == != <= >=

邏輯運算符:
and, or ,not
結(jié)果都是bool,有短路機制,所以要想好寫在前面的條件

賦值運算符:
= += -= *= /= //= **=
a=2;a**=3,#a=8
先計算得到右邊的結(jié)果,在運算賦值運算符。

進制

進制 2 8 10 16
符號 0b/0B 0o/0O 0x/0X
轉(zhuǎn)換 bin() oct() hex()

進制 原碼 反碼 補碼
正數(shù) 01010 01010 01010
負數(shù) 11010 10101 10110

位運算(進行位運算用的是補碼,運算得到負數(shù)要轉(zhuǎn)換為原碼)
& :同1為1;作用:讓指定位置置0或保留某一位的值,如奇數(shù) num&1 =1,偶數(shù)num&1 = 0
| :同0為0,作用:讓指定位置1,
^(異或):不同為1,相同為0;取反包含符號位,正數(shù)變負數(shù)。
得到負數(shù)要轉(zhuǎn)換位原碼
~(取反)
~0b0101 = ~0b0101(補碼) = 0b1010(補碼) = 0b1110
~0b1101 = ~0b1011(補碼) = 0b0100(補碼) = 0b0100
>>:m>>n = m//(2^n) 右移,符號位不變,在符號位后補指定的0或1,正數(shù)補0,負數(shù)補1
<<:m<<n = m*(2^n) 左移,后面用0補齊
移動的是補碼,小心!

字符串

python中的字符串用Unicode編碼,其中包含了ASCII(用一個字節(jié)來對一個字符進行的編碼)
chr(數(shù)字)返回字符
ord(字符)獲得Unicode編碼
可直接在字符串中寫對應(yīng)的編碼值:\u+4位16進制,如:\u12ab
阻止轉(zhuǎn)義:r/R
切片s[1:-1:2];s[-1:1:-1],s[1::2];s[-1::-1]
字符串的運算* +
in not in
字符串內(nèi)置函數(shù)
1.大小寫:
|capitalize()|將字符串的第一個字符轉(zhuǎn)換為大寫
|lower()|轉(zhuǎn)換字符串中所有大寫字符為小寫.
|upper()|轉(zhuǎn)換字符串中的小寫字母為大寫
|swapcase()|將字符串中大寫轉(zhuǎn)換為小寫,小寫轉(zhuǎn)換為大寫
36 |title()|返回"標題化"的字符串,就是說所有單詞都是以大寫開始,其余字母均為小寫(見 istitle())
2.對齊
ljust(width[, fillchar])|返回一個原字符串左對齊,并使用 fillchar 填充至長度 width 的新字符串,fillchar 默認為空格。
rjust(width,[, fillchar])|返回一個原字符串右對齊,并使用fillchar(默認空格)填充至長度 width 的新字符串
center(width, fillchar)|返回一個指定的寬度 width 居中的字符串,fillchar 為填充的字符,默認為空格。
|zfill (width)|返回長度為 width 的字符串,原字符串右對齊,前面填充0
3.is…………
isalnum()|如果字符串至少有一個字符并且所有字符都是字母或數(shù)字則返 回 True,否則返回 False
isalpha()|如果字符串至少有一個字符并且所有字符都是字母則返回 True, 否則返回 False
|isdigit()|如果字符串只包含數(shù)字則返回 True 否則返回 False..
|islower()|如果字符串中包含至少一個區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是小寫,則返回 True,否則返回 False
|isnumeric()|如果字符串中只包含數(shù)字字符,則返回 True,否則返回 False(中文數(shù)字也可以)
|isspace()|如果字符串中只包含空白,則返回 True,否則返回 False.
istitle()|如果字符串是標題化的(見 title())則返回 True,否則返回 False
|isupper()|如果字符串中包含至少一個區(qū)分大小寫的字符,并且所有這些(區(qū)分大小寫的)字符都是大寫,則返回 True,否則返回 False
4.截取
|lstrip()|截掉字符串左邊的空格或指定字符。 Lstrip("kdjf")去掉開頭中所有在字符集"kdjf"中字符
|rstrip()|刪除字符串字符串末尾的空格.
|strip([chars])|在字符串上執(zhí)行 lstrip()和 rstrip()
|split(str="", num=string.count(str))|num=string.count(str)) 以 str 為分隔符截取字符串,如果 num 有指定值,則僅截取 num 個子字符串
|splitlines([keepends])|按照行('\r', '\r\n', \n')分隔,返回一個包含各行作為元素的列表,如果參數(shù) keepends 為 False,不包含換行符,如果為 True,則保留換行符。

4.變換字符串內(nèi)容
join(seq)|以指定字符串作為分隔符,將 seq 中所有的元素(的字符串表示)合并為一個新的字符串
|replace(old, new [, max])|把 將字符串中的 str1 替換成 str2,如果 max 指定,則替換不超過 max 次。
5.查找下標,個數(shù),最大(?。┳帜?br> len(string)|返回字符串長度
max(str)|返回字符串 str 中最大的字母。
min(str)|返回字符串 str 中最小的字母。
count(str, beg= 0,end=len(string))|返回 str 在 string 里面出現(xiàn)的次數(shù),如果 beg 或者 end 指定則返回指定范圍內(nèi) str 出現(xiàn)的次數(shù)
find(str, beg=0 end=len(string))|檢測 str 是否包含在字符串中,如果指定范圍 beg 和 end ,則檢查是否包含在指定范圍內(nèi),如果包含返回開始的索引值,否則返回-1
rfind(str, beg=0,end=len(string))|類似于 find()函數(shù),不過是從右邊開始查找.
index(str, beg=0, end=len(string))|跟find()方法一樣,只不過如果str不在字符串中會報一個異常.
rindex( str, beg=0, end=len(string))|類似于 index(),不過是從右邊開始.
6.開始結(jié)束
endswith( suffix, beg=0, end=len(string))|檢查字符串是否以 obj 結(jié)束,如果beg 或者 end 指定則檢查指定的范圍內(nèi)是否以
obj 結(jié)束,如果是,返回 True,否則返回 False.
startswith(str, beg=0,end=len(string))|檢查字符串是否是以 obj 開頭,是則返回 True,否則返回 False。如果beg 和 end 指定值,則在指定范圍內(nèi)檢查。

循環(huán)分支

for _ in 序列:
while bool(條件):
range(n):產(chǎn)生一個0~n-1的整數(shù)序列(python2.x中是xrange).
range(m,n)
range(m,n,step) 間隔位step
注意:如果取到的變量num是不需要的,只是循環(huán),可以用 _ 來代替變量.
如果是不斷的獲取序列中的元素,直接用for循環(huán).
如果循環(huán)次數(shù)確定,最好也用for循環(huán)
死循環(huán)和循環(huán)次數(shù)不確定的時候最好用while
break,continue,自然結(jié)束后運行的else

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容