【问题】
创新互联提供做网站、成都网站制作、网页设计,成都品牌网站建设,一元广告等致力于企业网站建设与公司网站制作,10余年的网站开发和建站经验,助力企业信息化建设,成功案例突破成百上千家,是您实现网站建设的好选择.
将lst = [ [1, 2, 3], [2, 1, 3], [8, 4, 3] ],变为[1, 2, 3, 2, 1, 3, 8, 4, 3]
【方法】
1. myList = [x for j in lst for x in j]
2.
mylist = []
for i in L:
mylist += i
print(mylist)
3. 使用标准库中的itertools(循环器)
from itertools import chain
mylist = list(chain(*lst))
print(mylist)
给个代码示例吧:
a=[1,2,3]
b=[4,5,6]
c=a[:]
c=c+b
#此时列表c的内容是a与b合并后的内容
如果是原地合并,即把a与b的内容合并到a,则代码如下:
a=[1,2,3]
b=[4,5,6]
a.extend(b)
#此时列表a的内容是a与b合并后的内容
1、新建一个 将两个列表组合成一个列表.py。
2、中文编码声明注释:# coding=gbk。
3、定义两个列表,分别是 s1 和 s2 ,并且赋值。
4、使用 + 号将两个列表组合成一个,并且使用 s3 接受新的列表。
5、使用 print() 函数输出 s3。
6、运行脚本,输出新组合出来的列表。
使用集合去重 + local动态变量设置 + exec 字符串解析 可实现,话不多说,代码在下面,格式有问题调整下空格:
list_msg = [{'date':'2019-08-17', 'type':'旅游', 'over_im':'12365'},
{'date':'2019-08-17', 'type':'haha', 'over_im':'12365'},
{'date':'2019-08-18', 'type':'娱乐', 'over_im':'11234'},{'date':'2019-08-19', 'type':'生活', 'over_im':'9532'},]
# 去除字典重复的data ,获取数据包含多少天内容
set_mark = {i['date'] for i in list_msg}
# 去除非法命名字符作为列表后缀:
ver_name = [i.replace('-','_') for i in set_mark]
# 给列表排序,确保按照顺序输出变量
ver_name.sort()
# 设置动态命名模板
list_name_template = 'list_data_'
# 创建local对象,准备创建动态变量
createver = locals()
# 循环遍历数据并创建动态列表变量接收
for mark in set_mark:
# 动态创建变量
createver[list_name_template + mark.replace('-','_')] \
= [dict_current for dict_current in list_msg if dict_current['date'] == mark]
for name in ver_name:
print(list_name_template + name + ':' ,end='\t') # 打印自动创建的变量名称,采用tab分隔
exec('print('+list_name_template + name +')') # 打印变量内容(列表)
'''
打印结果
list_data_2019_08_17: [{'date': '2019-08-17', 'type': '旅游', 'over_im': '12365'}, {'date': '2019-08-17', 'type': 'haha', 'over_im': '12365'}]
list_data_2019_08_18: [{'date': '2019-08-18', 'type': '娱乐', 'over_im': '11234'}]
list_data_2019_08_19: [{'date': '2019-08-19', 'type': '生活', 'over_im': '9532'}]
'''
#!/usr/bin/env python
# coding: utf-8
#
# filename: lpart.py
# author: Tim Wang
# date: Dec., 2013
A=[['A','A1'],['B','A2'],['C','A3'],['D','A4']]
B=[['A','B1'],['B','B2'],['C','B3'],['D','B4']]
C=[['A','C1'],['B','C2'],['C','C3'],['D','C4']]
D=[['A','D1'],['B','D2'],['C','D3'],['D','D4']]
R = zip(zip(*A)[1], zip(*B)[1], zip(*C)[1], zip(*D)[1])
print R
dic1={'A':1,'B':2,'C':3}
dic2={'A':11,'B':22,'C':33}
dic3={'A':111,'B':222,'C':333}
keys = dic1.keys()
values = zip(
zip(*dic1.items())[1],
zip(*dic2.items())[1],
zip(*dic3.items())[1]
)
dic_all=dict(zip(keys, values))
print dic_all
A=[['A','A1'],['B','A2'],['C','A3'],['D','A4']]
B=[['B','B2'],['A','B1'],['D','B4'],['C','B3']]
C=[['A','C1'],['B','C2'],['D','C4']]
D=[['B','D2'],['C','D3'],['D','D4']]
dicts = map(dict, (A,B,C,D))
totalkeys = reduce(lambda x,y: x|set(y.keys()), dicts, set())
dict_all = dict([(k, filter(None, map(lambda x: x.get(k), dicts)))
for k in totalkeys])
print dict_all
python -u "lpart.py"
[('A1', 'B1', 'C1', 'D1'), ('A2', 'B2', 'C2', 'D2'), ('A3', 'B3', 'C3', 'D3'), ('A4', 'B4', 'C4', 'D4')]
{'A': (1, 11, 111), 'C': (3, 33, 333), 'B': (2, 22, 222)}
{'A': ['A1', 'B1', 'C1'], 'C': ['A3', 'B3', 'D3'], 'B': ['A2', 'B2', 'C2', 'D2'], 'D': ['A4', 'B4', 'C4', 'D4']}
Exit code: 0 Time: 0.048