字串支援像列表似得用下標進行取值操作,和進行切片
字串格式化:
內容相當於字串,也可以用雙引號包裹
str='''
1112222
33333
---------東小東-------
'''print(str)
字串拼接:方法1:
每次拼接時會重新開闢記憶體空間,效率較低
print("方法2:我"+"
是"+"
東小東") #
輸出:我是東小東
%s為字串,%d為整數,%f為浮點數等等
print("方法3:我是%s%s
"%("
東小東","
-加油")) #
輸出:我是東小東-加油
如果使用format_map,傳遞的值為字典
print("方法4:我是".format(namex="
東小東",textx="
-加油")) #
輸出:我是東小東-加油
print("我是".format("
東小東","
-加油")) #
輸出:我是東小東-加油
1字串的排序:#字串2 strx="
abadefg1"3
4print(strx.capitalize()) #
首字母大寫
5print("
dong xiao
".swapcase()) #
大小寫對應轉換,輸出:dong xiao
6 print(len(strx)) #字串長度為8
7print(strx.count("
a")) #
統計字串a的個數89
print(strx.center(50,"
*")) #
一共列印50個字元,將strx放在中間,其他使用*號補全
10print(strx.ljust(50,"
*")) #
一共列印50個字元,將strx放在左邊,其他使用*號補全,對應有 rjust()
1112
print(strx.endswith("
fg")) #
字串是否與"fg"結尾,返回bool
1314
print(strx.find("
=2=")) #
查詢字串所在位置,失敗返回-1,成功返回索引值
1516
print("
rfid id id
".rfind("
i")) #
從左到右,查詢到最右邊乙個的下標,輸出:8
1718
19print(strx.isalnum()) #
是否是只有數字和字母組成,返回bool
2021
print(strx.isalpha()) #
是否只有字母,返回bool
2223
print("
10".isdigit()) #
是否是整數,返回bool ,輸出:true
2425
print("
+jj".isidentifier()) #
是否是合法變數名,返回bool ,輸出:false
2627
print("
abcd東
".lower())#
將大寫字母轉換為小寫,對應有upper()
2829
print("
abbc
".islower()) #
是否全為小寫,大寫為:isupper()
3031
print("
dong xiao dong1
".title()) #
各單詞首字母大寫,輸出:dong xiao dong1
3233
print("
dong xiao dong
".istitle()) #
判斷每個單詞首字母是否均為大寫,輸出:true
3435
print("
==".join(["
111","
222","
333"])) #
集合轉換為字串,並且使用特點字元分隔,輸出:111==222==333
3637
print("
\tjj\n
".strip()) #
去掉兩邊空格或回車等,對應還有:lstrip(),rstrip()
3839 p=str.maketrans("
dongxiao
","123gx678
") #
一一對應關係
40print("
dongxiaodong
".translate(p)) #
內容替換,輸出:183gx678183g
4142
print("
abcab
".replace("
a","
aa")) #
替換,輸出:aabcaab
4344
print("
dong+xiao+dong
".split("
+")) #
將字串以"+"分割並儲存到列表中,預設分隔符為空格
#排序#判斷某個字串是否是另乙個字串的子字串,可以使用find(),也可使用:轉換成列表輸出
listx="
bbe59210
"print(sorted(listx)) #
輸出:['0', '1', '2', '5', '9', 'b', 'b', 'e']
if字串查詢(index)"dong"in
"dongxiaodong":
print("
存在") #
輸出if
"dong
"notin"
xiaoxiao":
print("
不存在") #
輸出
如果查詢的字串存在則返回位置,不存在則報錯
try中文編碼演變:ascll->gb3212->gbk(已支援基本的中文,常用)->gb18030(收錄各民族文字),各編碼均向下相容:
print("
東小東dong
".index("
donge"))
except
valueerror as e:
print("
****異常***
",e)
世界標準:ascll(乙個字元佔乙個位元組)->unicode(萬國碼,乙個字元佔兩個位元組)->utf-8(英文乙個字元佔乙個位元組,漢字乙個字元佔三個位元組)
其中python3的預設編碼為utf-8
編碼和解碼:
1#編碼,字串編碼為二進位制格式2#
引數表示是以什麼編碼集進行編碼
3 bstr="
字串".encode("
gbk") #
utf-845
#解碼,二進位制轉換為字串格式6#
引數表示是以什麼編碼集進行解碼
7 str=bstr.decode("
gbk")8
9print(str) #
輸出:字串
python集合 字元編碼 bytes與二進位制
集合 用括號表示,可以包含多個元素,用逗號分割 用途 用於關係運算 集合特點 1.每個元素是不可變型別 2.沒有重複的元素 3.無序 應用 1.set去重 set names 的功能是將列表轉換成集合,並去除重複值 但是因為集合裡面的元素時不可變的,所以set在去重時物件所包含的值不能有不可變型別,...
字串與二進位制
單引號字串會被表示成整數值列表。c返回字元 c 的整數編碼。下面這個例子用於解析字元列表表示法,該表示法用於表示乙個任意的有符號的十進位制資料。defmodule parse do def number tail do number digits tail,0 1 enddef number tai...
python字串與二進位制之間的轉換
字串與二進位制之間的轉換 encode 字串轉為二進位制 decode 二進位制轉為字串 str 字串 bytes 二進位制 wo 你好 print wo print type wo 列印資料型別 print wo.encode encoding utf 8 print type wo.encode...