python两个长度相等的list元素合并?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python两个长度相等的list元素合并?相关的知识,希望对你有一定的参考价值。
比如说如果两个列表长度相同,例如
list1 = ["a", "b", "c"]
list2 = [1, 2, 3]
想要得到两个列表元素合并后的列表:["a1", "b2", "c3"]
有没有简单的办法呢?
1.简介:Python 中 list 的合并操作
2.所需工具/原料: python2.7
3.方法:
l1=[\'L\',\'O\',\'L\']l2=[\'lu\',\'a\',\'lu\']
# 将两个list合二为一
l1+l2 (或 l1.extend(l2))
#运行结果:
[\'L\', \'O\', \'L\', \'lu\', \'a\', \'lu\']
# 将两个list捆绑
zip(l1,l2)
#运行结果:
[(\'L\', \'lu\'), (\'O\', \'a\'), (\'L\', \'lu\')]
# 将两个list合为一个dict
dict(zip(l1,l2))
#运行结果:
\'L\': \'lu\', \'O\': \'a\'
4.注意事项: Python中的很多函数方法都是可以\'跨界\'活用的,如果你只从list的函数方法中找解,这个问题就十分棘手
参考技术A有几种方法,这里说两种假设元素都是字符串
列表解析[''.join(i) for i in zip(list1, list2)]
map(lambda x,y:x+y, list1, list2)
一组是数字,另一组是字符串呢?
追答['%s%s'%(a,b) for (a,b) in zip(list1, list2)]
python练习题--2
1、判断字符list中是否有重复
思路:通过集合去重,然后对比list长度,重复返回False,不重复返回True
#检查是否有重复元素 def check_repeat(list): return len(list)==len(set(list))
2、两个字符串每个字符出现次数均相等,顺序可以不同
counter方法可以统计字符出现次数
#检测两个字符串是否互为变位词(即互相颠倒字符顺序) from collections import Counter def counter_str(first,second): return Counter(first)==Counter(second)
3、以字节为单位返回字符串长度
思路:字符串编码格式改为UTF-8,然后统计长度
#以字节为单位返回字符串长度 def byte_size(str): return len(str.encode(‘utf-8‘)) #一个汉字占3个字节
4、重复打印字符串
思路:乘以n,实现多次的效果
#重复打印字符串N次 n=7 str=‘zhao‘ print(str*n)
5、字符串中每个词首字母大写
#首字母大写,字符串每个词进行首字母大写 s=‘count your awesome‘ print(s.title()) #字符串内每个词进行首字母大写
6、删除list中错误的数据
bool函数,错误的数就是FALSE,0,none,filter相当于迭代器,把list中的每个值传给bool方法
#以下方法使用fliter()删除列表中的错误值(如:false,none,0和"") def compact(lst): return list(filter(bool,lst)) print(compact([0,1,False,2,3,None,4,5]))
7、间隔数--转换二维数组
思路:通过解包函数,把array数组每个二维数组解包,重新组合
#间隔数--转换一个二维数组 array=[[‘a‘,‘b‘],[‘c‘,‘d‘],[‘e‘,‘f‘]] transposed=list(zip(*array)) print(transposed) #[(‘a‘, ‘c‘, ‘e‘), (‘b‘, ‘d‘, ‘f‘)]
8、字符串列表转换为单个字符串,列表中的每个元素用逗号分隔
#字符串列表转换为单个字符串,列表中的每个元素用逗号分隔 hobbies=[‘your‘,‘jeans‘,‘swimming‘] print(‘,‘.join(hobbies))
以上是关于python两个长度相等的list元素合并?的主要内容,如果未能解决你的问题,请参考以下文章
将两个不相等的数据框与两个索引(日期时间和日期)上的部分公共元素合并