前言
我們在分析列表數(shù)據(jù)時,常常需要對列表數(shù)據(jù)進行輸出或多列表關(guān)聯(lián)拼接。直接使用列表,列表中的各元素以逗號分隔,每個元素包含引號。如何連接列表中的元素為一個字符串呢?
文章主要介紹python 連接列表元素的4種方法,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下。
一、使用join()方法連接列列表
使用join()方法可將列表中的元素以指定的間隔符進行連接,如果不使用間隔符,可以使用’ ‘空字符作為間隔符。下面介紹使用符號’ ’ 和"_"連接每個城市:
# *_* coding : UTF-8 *_*
city=['上海', '廣州', '成都', '北京', '武漢', '長沙', '杭州', '廈門']
print(''.join(city))
print(' '.join(city))
print('-'.join(city))
輸出結(jié)果:
上海廣州成都北京武漢長沙杭州廈門
上海 廣州 成都 北京 武漢 長沙 杭州 廈門
上海-廣州-成都-北京-武漢-長沙-杭州-廈門
二、利用for循環(huán)連接列表
使用for循環(huán)讀取列表中的每一個元素,然后拼接為一個字符串??梢园葱枰O(shè)置間隔字符。如使用符號’‘、’+‘和’<'連接列表中的元素。在輸出時,若使用print()函數(shù)進行直接輸出,也可以直接設(shè)置print()函數(shù)的end參數(shù)來設(shè)置分隔符,如下:
# *_* coding : UTF-8 *_*
data = [10, 20, 30, 40, 50, 60, 70, 80]
strnull = ''
stradd = ''
strlin = ''
for item in data:
strnull = strnull + str(item) # 連接列表中的元素,間隔符為空
stradd = stradd + '+' + str(item) # 連接列表中的元素,間隔符為‘+’
strlin = strlin + '<' + str(item) # 連接列表中的元素,間隔符為‘<’
if item ==80:
print(item)
else:
print(item, end='*') # 在輸出設(shè)置間隔符為‘*’,連接各個元素
print(strnull)
print(stradd.lstrip('+'))
print(strlin.lstrip('<'))
輸出結(jié)果:
10203040506070*80
1020304050607080
10+20+30+40+50+60+70+80
10<20<30<40<50<60<70<80
三、對列表進行切片然后連接
使用列表中的切片操作提取列表中的元素,然后用“+”連接,可以實現(xiàn)列表中元素的連接。
# *_* coding : UTF-8 *_*
data=['上海', '廣州', '上海', '成都', '上海', '上海', '北京', '上海', '廣州', '北京', '上海']
strnull=data[1]+data[2]+ data[3]+data[4] # 連接列表中的元素,間隔符為空
stradd=data[1]+'-'+data[2]+'-'+ data[3]+'-'+data[4] # 連接列表中的元素,間隔符為‘+’
print(strnull)
print(stradd)
輸出結(jié)果:
廣州上海成都上海
廣州-上海-成都-上海
四、使用zip壓縮多個列表為一個列表
zip()函數(shù)用于可迭代的對象作為參數(shù),將對象中對應(yīng)的元素依次打包成元組,然后返回由這些元組組成的列表。如果各個迭代器的元素個數(shù)不一致,則返回列表長度與最短的對象相同,利用“*”號操作符,可以將元組解壓為列表。
語法:zip([iterable,…])
參數(shù)說明:“iterable,…”用于指定一個或多個迭代器。
返回值:元組列表
示例:有table1,table2,table3,3個表分別分別存儲了各國汽車銷量的前六名品牌和銷量,若要對各品牌汽車銷量進行匯總分析,可以使用zip()函數(shù)將多個列表拼接為一個列表。
# *_* coding : UTF-8 *_*
gem=[["大眾",643518],["奔馳",319163],["寶馬",265051],["福特",252323],["雪鐵龍",227967],["奧迪",255300]]
fra=[["雪鐵龍", 698985],["雷諾",547704],["大眾",259268],["福特",82633],["寶馬",84931],["奔馳",73254]]
eng=[["福特",254082],["大眾",203150],["雪鐵龍",177298],["奔馳",172238],["寶馬",172048],["奧迪",143739]]
for item1,item2,item3 in zip(gem,fra,eng):
print(item1[0],item1[1]," ",item2[0],item2[1]," ",item3[0],item3[1])
for item1,item2,item3 in zip(gem,fra,eng):
item11 = item1[0].ljust(8)
item12 = str(item1[1]).ljust(8)
item21 = item2[0].ljust(8)
item22 = str(item2[1]).ljust(8)
item31 = item1[0].ljust(8)
item32 = str(item3[1]).ljust(8)
print(item11 +"\t",item12+"\t"," ",item21+"\t",item22+"\t"," ",item31+"\t",item32)
輸出結(jié)果:文章來源:http://www.zghlxwxcb.cn/news/detail-818182.html
大眾 643518 雪鐵龍 698985 福特 254082
奔馳 319163 雷諾 547704 大眾 203150
寶馬 265051 大眾 259268 雪鐵龍 177298
福特 252323 福特 82633 奔馳 172238
雪鐵龍 227967 寶馬 84931 寶馬 172048
奧迪 255300 奔馳 73254 奧迪 143739
大眾 643518 雪鐵龍 698985 大眾 254082
奔馳 319163 雷諾 547704 奔馳 203150
寶馬 265051 大眾 259268 寶馬 177298
福特 252323 福特 82633 福特 172238
雪鐵龍 227967 寶馬 84931 雪鐵龍 172048
奧迪 255300 奔馳 73254 奧迪 143739文章來源地址http://www.zghlxwxcb.cn/news/detail-818182.html
到了這里,關(guān)于python學(xué)習(xí)之把列表元素拼接成字符串的4種方法的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!