在python3中全部的整數都是int類型. 但在python2中若是數據量比較大. 會使用long類型.可是在python3中不存在long類型.java
整數可進行的操做 :
bit_length(). 計算整數在內存中佔用的二進制碼的長度.
python
取值只有True,False(bool值沒有操做)git
轉換問題:編程
字符串用於存儲數據,但存儲數據量比較少,在python中用 ' (單引號) "(雙引號) '''(單引號三三引) """(雙引號三引)引發來的內容被稱爲字符串.api
字符串與索引的關係及其操做以下 :編程語言
索引(下標)函數
索引就是下標,下標從0開始,取值時索引所選長度不能夠超過其自己.學習
s1 = "python學習" print(s1[0]) # 獲取第0個索引所對應的的元素. print(s1[1]) # 同上 print(s1[2]) # 同上 print(s1[3]) # 同上 print(s1[4]) # 同上 print(s1[5]) # 同上 print(s1[6]) # 同上 print(s1[7]) # 同上 print(s1[8]) # 同上 print(s1[9]) # 沒有9,越界了會報錯,索引長度不能夠超過自己 print(s1[-1]) # -1表示倒數第一個 print(s1[-2]) # 倒數第二個
切片code
語法 : str[start:end]對象
規則 : 顧頭不顧腚,從start開始截取,截取到end位置,但不包括end,切片長度能夠超出範圍.
用法 : 咱們可使用下標來截取部分字符串的內容
s2 = "python好學習" print(s2[0:3]) # 從0獲取到3,不包含3,結果:pyt print(s2[6:8]) # 結果:好學 print(s2[6:9]) # 最答是8,但根據顧頭不顧腚,想要取到8必須給9 print(s2[6:10]) # 若是右邊已通過了最答值,至關於獲取到最後,切片長度能夠超出範圍,索引長度不能夠. print(s2[4:]) # 若是想獲取到最後,那麼:後能夠不放值. print(s2[-1:-5]) # 從-1獲取到-5這樣是獲取不到任何結果的,從-1向右數,取值方向向右,數不到-5. print(s2[-5:-1]) # 取到學習這個數據了,可是,顧頭不顧尾,取不到最後一個. print(s2[-5:]) # 什麼都不寫就是取值到最後 print(s2[:-1]) # 這個是取到倒數第一個值,但不包含倒數第一的這個值 print(s2[:]) # 取所有
步長
切片語法 : str[start : end : step]
步長用法 : 若是是整數,則從左往右取,若是是負數,則從右往左取,step默認是1取值方向從左往右.
s2 = "python好學習" print(s2[1:5:2]) # 從索引爲1的位置開始取,取到索引爲4的位置,每2個取1個,結果:yh print(s2[:5:2]) # 從索引爲0的位置開始到索引爲4的位置,每兩個取一個 print(s2[4::2]) # 從索引爲4的位置開始取到最後,每兩個取一個 print(s2[-5::2]) # 從索引爲-5的位置取到最後.每兩個取一個 print(s2[-1:-5]) # 從索引爲-1的位置取到索引爲-4的位置,可是什麼都沒有,由於取的方向是從左往右 print(s2[-1:-5:-1]) # 從索引爲-1的位置取到索引爲-4的位置,步長是-1,取的方向這時就從右往左. print(s2[-5::-3]) # 從索引爲-5的位置開始取到最開始,每三個取一個,結果:oy
字符串經常使用方法
注意 : 切記,字符串是不可變的對象,因此任何操做對原字符串是不會有任何影響.
大小寫互相轉換,常應用於校驗用戶輸入的驗證碼是否合法
# 首字母大寫 s1.capitalize() print(s1) # 輸出發現並無任何的變化,由於這裏的字符串自己是不會發生改變的,須要咱們從新賦值後用. ret1 = s1.capitalize() print(ret1) --------------------------------- # 所有轉換成小寫 ret = s1.lower() print(ret) --------------------------------- # 所有轉換成大寫 ret = s1.upper() print(ret) --------------------------------- # 大小寫互相轉換 ret = s1.swapcase() print(ret) --------------------------------- ret = s1.casefold() # 用於轉換成小寫,此方法不經常使用,和lower的區別:lower()對某些字符支持不夠好. casefold()對全部字母都有效,好比東歐的一些字母 print(ret) s2 = "БBß" # 俄美德 print(s2) print(s2.lower()) # 打印結果比對能夠看到lower沒法對德語轉化 print(s2.casefold()) --------------------------------- # 每一個被特殊字符隔開的字母首字母大寫 s = "eggon,taibai*yinwang" ret = s.title() print(ret)# 打印結果 Eggon,Taibai*Yinwang s = "你好chen你好shuo我是" # 你好Chen你好Shuo我是 中問也算是特殊字符 print(s4.title())
字符串的切割
# 居中 s = "周杰倫" ret = s.center(10, "*") # 拉長成10,把原字符串放中間,其他位置補* print(ret) --------------------------------- # 更改tab的長度 s = "alir\teon" print(s) print(s.expandtabs()) # 能夠改變\t的長度, 默認長度更改成8 --------------------------------- # 去空格,經常使用於當用戶登陸時,忽略用戶輸入的空格 s = " chen shuo nihao " ret = s.strip() # 去掉左右兩端的空格 print(ret) ret = s.lstrip() # 去掉左邊空格 print(ret) ret = s.rstrip() # 去掉右邊空格 print(ret) --------------------------------- # 字符串替換 s = "chen_shuo_nihao" ret = s.replace('chen', 'hehe') # 把chen替換成hehe print(s) # 注意,字符串是不可變對象. 全部操做用返回值 print(ret) # hehe_shuo_nihao ret = s.replace('n', 'yy', 2) # 把c替換成yy, 替換2個 print(ret) # 打印結果 cheyy_shuo_yyihao --------------------------------- # 字符串切割 s = "chen,shuo,ni,hao" lst = s.split(",") # 字符串切割,根據","進行切割 print(lst) # 打印結果是列表形式 ["chen","shuo","ni","hao"] #若是切割符在左右兩端,那麼必定會出現空字符串,深坑請留意.
字符串的查找
s = "我叫sylar,我喜歡python,java,c等編程語言." ret1 = s.startswith("sylar") # 判斷是否以sylar開頭 print(ret1) ret2 = s.startswith("我叫sylar") # 判斷是否以我叫sylar開頭 print(ret2) --------------------------------- ret3 = s.endswith("語言") # 是否以'語言'結尾 print(ret3) ret4 = s.endswith("語言.") # 是否以'語言.'結尾 print(ret4) --------------------------------- ret7 = s.count("a") # 查找"a"出現的次數 print(ret7) --------------------------------- ret5 = s.find("sylar") # 查找'sylar'出現的位置 print(ret5) ret6 = s.find("tory") # 查找'tory'的位置,若是沒有返回-1 print(ret6) ret7 = s.find("a", 8, 22) # 切片找 print(ret7) --------------------------------- ret8 = s.index("sylar") # 求索引位置,注意,若是找不到索引,程序會報錯 print(ret8)
is 系列
ret=1234 ret.isdecimal # 判斷是否是十進制 ret.isalnum # 判斷是否是中文,字母,數字 ret.isalpha # 判斷是否是中文,字母 ret.isdigit # 判斷是否由純數字組成
計算字符串的長度
s = "你好我是***" ret = len(s) # 計算字符串的長度度 print(ret) # 打印結果爲7 # len()是python的內置函數
for循環用法 : 咱們可使用for循環來便利(獲取)字符串中的每個字符.
for語法:
for 變量 in 可迭代對象:
pass
可迭代對象: 能夠一個一個往外取值的對象
in的用法:
在for中. 是把每個元素獲取到賦值給前面的變量.
不在for中. 判斷xxx是否出如今str中.
# for循環, 把s中的每個字符拿出來賦值給前面的c s="你們好,我是python學習者" for c in s: print(c) # 注意縮進字符 print(c) # 此時打印結果爲for循環最後一次c的取值 # in在python中的用法 print('pyt' in s) # 此時打印出的結果是Ture
語法 : range(start,end,step)
注意 : 顧頭不顧尾,當range(10)爲此形式時,起始位置默認從0開始到9結束,打印10次