翼度科技»论坛 编程开发 python 查看内容

python列表元素拼接成字符串的4种方法

6

主题

6

帖子

18

积分

新手上路

Rank: 1

积分
18
前言

我们在分析列表数据时,常常需要对列表数据进行输出或多列表关联拼接。直接使用列表,列表中的各元素以逗号分隔,每个元素包含引号。如何连接列表中的元素为一个字符串呢?
文章主要介绍python 连接列表元素的4种方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下。

一、使用join()方法连接列列表

使用join()方法可将列表中的元素以指定的间隔符进行连接,如果不使用间隔符,可以使用’ ‘空字符作为间隔符。下面介绍使用符号’ ’ 和"_"连接每个城市:
  1. # *_* coding : UTF-8 *_*

  2. city=['上海', '广州', '成都', '北京', '武汉', '长沙', '杭州', '厦门']
  3. print(''.join(city))
  4. print(' '.join(city))
  5. print('-'.join(city))
复制代码
输出结果:
  1. 上海广州成都北京武汉长沙杭州厦门上海 广州 成都 北京 武汉 长沙 杭州 厦门上海-广州-成都-北京-武汉-长沙-杭州-厦门
复制代码
二、利用for循环连接列表

使用for循环读取列表中的每一个元素,然后拼接为一个字符串。可以按需要设置间隔字符。如使用符号’‘、’+‘和’<'连接列表中的元素。在输出时,若使用print()函数进行直接输出,也可以直接设置print()函数的end参数来设置分隔符,如下:
  1. # *_* coding : UTF-8 *_*

  2. data = [10, 20, 30, 40, 50, 60, 70, 80]
  3. strnull = ''
  4. stradd = ''
  5. strlin = ''
  6. for item in data:
  7.     strnull = strnull + str(item)  # 连接列表中的元素,间隔符为空
  8.     stradd = stradd + '+' + str(item)  # 连接列表中的元素,间隔符为‘+'
  9.     strlin = strlin + '<' + str(item)  # 连接列表中的元素,间隔符为‘<'
  10.     if item ==80:
  11.         print(item)
  12.     else:
  13.         print(item, end='*')  # 在输出设置间隔符为‘*',连接各个元素
  14. print(strnull)
  15. print(stradd.lstrip('+'))
  16. print(strlin.lstrip('<'))
复制代码
输出结果:
  1. 10203040506070*80102030405060708010+20+30+40+50+60+70+8010<20<30<40<50<60<70<80
复制代码
三、对列表进行切片然后连接

使用列表中的切片操作提取列表中的元素,然后用“+”连接,可以实现列表中元素的连接。
  1. # *_* coding : UTF-8 *_*

  2. data=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']
  3. strnull=data[1]+data[2]+ data[3]+data[4]                     # 连接列表中的元素,间隔符为空
  4. stradd=data[1]+'-'+data[2]+'-'+ data[3]+'-'+data[4]   # 连接列表中的元素,间隔符为‘+'
  5. print(strnull)
  6. print(stradd)
复制代码
输出结果:
  1. 广州上海成都上海广州-上海-成都-上海
复制代码
四、使用zip压缩多个列表为一个列表

zip()函数用于可迭代的对象作为参数,将对象中对应的元素依次打包成元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用“*”号操作符,可以将元组解压为列表。
语法:zip([iterable,…])
参数说明:“iterable,…”用于指定一个或多个迭代器。
返回值:元组列表
示例:有table1,table2,table3,3个表分别分别存储了各国汽车销量的前六名品牌和销量,若要对各品牌汽车销量进行汇总分析,可以使用zip()函数将多个列表拼接为一个列表。
  1. # *_* coding : UTF-8 *_*

  2. gem=[["大众",643518],["奔驰",319163],["宝马",265051],["福特",252323],["雪铁龙",227967],["奥迪",255300]]
  3. fra=[["雪铁龙", 698985],["雷诺",547704],["大众",259268],["福特",82633],["宝马",84931],["奔驰",73254]]
  4. eng=[["福特",254082],["大众",203150],["雪铁龙",177298],["奔驰",172238],["宝马",172048],["奥迪",143739]]
  5. for item1,item2,item3 in zip(gem,fra,eng):
  6.     print(item1[0],item1[1],"  ",item2[0],item2[1],"  ",item3[0],item3[1])

  7. for item1,item2,item3 in zip(gem,fra,eng):
  8.     item11 = item1[0].ljust(8)
  9.     item12 = str(item1[1]).ljust(8)
  10.     item21 = item2[0].ljust(8)
  11.     item22 = str(item2[1]).ljust(8)
  12.     item31 = item1[0].ljust(8)
  13.     item32 = str(item3[1]).ljust(8)
  14.     print(item11 +"\t",item12+"\t","  ",item21+"\t",item22+"\t","  ",item31+"\t",item32)
复制代码
输出结果:
  1. 大众 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
复制代码
到此这篇关于python列表元素拼接成字符串的4种方法的文章就介绍到这了,更多相关python列表元素拼接成字符串内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

来源:https://www.jb51.net/article/276268.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具