Python中字符串、列表、字典常用的拼接方法有哪些?
共 8831字,需瀏覽 18分鐘
·
2024-08-08 22:22
關(guān)于字符串的拼接最常用的方式是使用加號(+)進(jìn)行連接;
處理后兩個字符串變成一個字符串;
需要注意的是,加號(+)兩邊都需要是字符串,如果一個是字符串,一個是數(shù)字,那需要把數(shù)字轉(zhuǎn)換成字符串,可使用str()方法;
示例1:使用加號(+)拼接幾個字符串:
bai_du = "www." + "baidu" + ".com"print(bai_du) # 輸出:www.baidu.combooking = "www." + "12306" + ".com"print(booking) # 輸出:www.12306.com
示例2:使用加號(+)拼接字符串和數(shù)字,會報錯:
booking_err = "www." + 12306 + ".com"print(booking_err)# 輸出:TypeError: can only concatenate str (not "int") to str# 將數(shù)字轉(zhuǎn)為字符串再拼接:booking_01 = "www." + str(12306) + ".com"print(booking_01) # 輸出:www.12306.com
可使用逗號連接字符串;
使用逗號連接多個字符串后,最終結(jié)果是元組;
可使用join()方法將元組中的元素連接成一個字符串;
示例1:先用逗號拼接幾個字符串:
year = input("年份:")month = input("月份:")festival = input("節(jié)日:")today = year,month,festivalprint(today)# 輸出:# 年份:2024# 月份:2.23# 節(jié)日:元宵節(jié)# ('2024', '2.23', '元宵節(jié)')
示例2:將逗號拼接后的元組,使用join()方法連接為一個字符串:
today_01 = ('2024', '2.23', '元宵節(jié)')today_str = " ".join(today_01)print(today_str) # 輸出:2024 2.23 元宵節(jié)
這個方式最簡單,就是把幾個字符串放在一起打印出來即可;
這個打印出來的結(jié)果是不管字符串中間有沒有空格,都會拼接為一個字符串,但空格依然保留;
示例1:直接打印:
print("我有一個億," "我是高富帥")# 輸出:我有一個億,我是高富帥
示例2:加空格直接打印:
print("我有一個億, " "我是高富帥")# 輸出:我有一個億, 我是高富帥
示例3:直接打印多個:
print("當(dāng)你有10個億,""你會怎么辦?""1、買別墅?""2、買豪車?""3、投資健康?""4、做慈善?""5、不知道怎么做!")# 輸出:# 當(dāng)你有10個億,你會怎么辦?1、買別墅?2、買豪車?3、投資健康?4、做慈善?5、不知道怎么做!
這個字符串的格式化一樣,使用%連接一個字符串和一組變量;
比如:
print("%s %s" % ("元宵節(jié)", "快樂!"))# 輸出:元宵節(jié) 快樂!
jion()方法可以將列表中的元素連接起來,并且可以指定連接符;
比如不使用連接符:
data_list = ['你是', '土肥圓', '你怕啥']print("".join(data_list))# 輸出:你是土肥圓你怕啥
比如使用逗號連接:
data_list = ['你是', '土肥圓', '你怕啥']print(",".join(data_list))# 輸出:你是,土肥圓,你怕啥
使用for循環(huán)讀取列表中的每個元素,然后再拼接;
拼接的同時可以使用間隔字符,比如“,”,“+”,“-”等等;
示例如下:
data01 = ""data02 = ""data03 = ""data_list = [100, 200, 300, 400, 500, 600]for i in data_list:data01 = data01 + str(i)data02 = data02 + "," + str(i)data03 = data03 + "*" + str(i)print(data01) # 輸出:100200300400500600print(data02.lstrip(",")) # 輸出:100,200,300,400,500,600print(data03.lstrip("*")) # 輸出:100*200*300*400*500*600
先使用列表切片,然后再使用“+”進(jìn)行連接;
示例如下:
data = ["成都", "重慶", "杭州", "武漢", "西安", "天津", "蘇州","南京", "鄭州", "長沙", "東莞", "沈陽", "青島", "合肥", "佛山"]data01 = data[1] + data[3] + data[5] + data[7]print(data01) # 輸出:重慶武漢天津南京data02 = data[2] + "-" + data[4] + "-" +data[6] + "-" + data[8]print(data02) # 輸出:杭州-西安-蘇州-鄭州
使用zip()方法壓縮將多個列表為一個列表;
zip()函數(shù)將迭代對象作為參數(shù),將對象中對應(yīng)的元素一次打包成元組,返回由這些元組組成的列表;
示例如下:
January = [["A1", 100], ["A2", 200], ["A3", 300]]February = [["B1", 400], ["B2", 500], ["B3", 600]]March = [["C1", 700], ["C2", 800], ["C3", 900]]for x, y, z in zip(January, February, March):print(x[0], x[1], " ", y[0], y[1], " ", z[0], z[1])# 輸出:# A1 100 B1 400 C1 700# A2 200 B2 500 C2 800# A3 300 B3 600 C3 900
可以直接使用字典的items()方法獲得字典的鍵值對列表;如下:
month = {"1月": "100萬", "2月": "200萬", "3月": "300萬", "4月": "400萬"}for key, value in month.items():print(key, value)
使用字典對象的keys()方法獲得字典的鍵值;
比如:
score = {"火影": "100", "海賊王": "100", "死神": "99", "妖精的尾巴": "98"}for key in list(score.keys()):print(key)# 輸出:# 火影# 海賊王# 死神# 妖精的尾巴
使用字典對象的values()方法獲得字典的值;
score = {"火影": "100", "海賊王": "100", "死神": "99", "妖精的尾巴": "98"}for value in list(score.values()):print(value)# 輸出:# 100# 100# 99# 98
鏈接:https://blog.51cto.com/NoamaNelson/9755354
