首页 » 爱链网 » 001:合并列表(编辑器进击列表片段代码)

001:合并列表(编辑器进击列表片段代码)

神尊大人 2024-07-24 03:16:47 爱链网 0

扫一扫用手机浏览

文章目录 [+]

合集传送门:代码片段精选

\" data-from=\"0\" data-is_biz_ban=\"0\">
本文关键词:
合并列表

将两个或多个列表合并为一个列表的列表,根据每个输入列表的位置合并元素。

将 max() 与列表推导式( list comprehension )结合使用,可获取参数中最长列表的长度。
将 range() 与 max_length 变量结合使用,循环次数与最长列表中的元素数量相同。
如果列表短于 max_length,则对剩余项使用 fill_value(默认为无)。
zip() 和 itertools.zip_longest() 提供了与本代码段类似的功能。

def merge(args, fill_value = None): max_length = max([len(lst) for lst in args]) result = []for i in range(max_length): result.append([ args[k][i] if i < len(args[k]) else fill_value for k in range(len(args)) ])return resultmerge(['a', 'b'], [1, 2], [True, False]) # [['a', 1, True], ['b', 2, False]]merge(['a'], [1, 2], [True, False]) # [['a', 1, True], [None, 2, False]]merge(['a'], [1, 2], [True, False], fill_value = '_')# [['a', 1, True], ['_', 2, False]]

Source: https://www.30secondsofcode.org/python/s/merge/

001:合并列表(编辑器进击列表片段代码) 001:合并列表(编辑器进击列表片段代码) 爱链网
(图片来自网络侵删)

- EOF -

回复关键词「 pybook03」,领取进击的Grey与小伙伴一起翻译的《Think Python 2e》电子版
回复关键词「书单02」,领取进击的Grey整理的 10 本 Python 入门书的电子版

001:合并列表(编辑器进击列表片段代码) 001:合并列表(编辑器进击列表片段代码) 爱链网
(图片来自网络侵删)

告诉你更多细节干货

欢迎围观我的朋友圈

?每天更新所想所悟

标签:

相关文章