Python檔案袋(字串與二進位制的編碼與解碼

2022-01-09 21:30:06 字數 4108 閱讀 7216

字串支援像列表似得用下標進行取值操作,和進行切片

字串格式化:

內容相當於字串,也可以用雙引號包裹

str='''

1112222

33333

---------東小東-------

'''print(str)

字串拼接:方法1:

每次拼接時會重新開闢記憶體空間,效率較低

print("

我"+"

是"+"

東小東") #

輸出:我是東小東

方法2:

%s為字串,%d為整數,%f為浮點數等等

print("

我是%s%s

"%("

東小東","

-加油")) #

輸出:我是東小東-加油

方法3:

如果使用format_map,傳遞的值為字典

print("

我是".format(namex="

東小東",textx="

-加油")) #

輸出:我是東小東-加油

方法4:

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("

+")) #

將字串以"+"分割並儲存到列表中,預設分隔符為空格

字串的排序:

#排序#

轉換成列表輸出

listx="

bbe59210

"print(sorted(listx)) #

輸出:['0', '1', '2', '5', '9', 'b', 'b', 'e']

判斷某個字串是否是另乙個字串的子字串,可以使用find(),也可使用:

if

"dong"in

"dongxiaodong":

print("

存在") #

輸出if

"dong

"notin"

xiaoxiao":

print("

不存在") #

輸出

字串查詢(index)

如果查詢的字串存在則返回位置,不存在則報錯

try

:

print("

東小東dong

".index("

donge"))

except

valueerror as e:

print("

****異常***

",e)

中文編碼演變:ascll->gb3212->gbk(已支援基本的中文,常用)->gb18030(收錄各民族文字),各編碼均向下相容

世界標準: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...