python - Python多个列表,保持相同,用变量替换差异
问题描述
我想比较未定义数量的具有相同长度的列表,并以相同的顺序创建一个相同长度的新列表,其中保留相同的位置,而没有用变量替换的位置。
所以新列表看起来像 ['a','b',variable1,'d']
提前致谢
解决方案
>>> lsts = [
... [1,2,3,4],
... [1,2,3,5],
... [2,2,3,4]]
>>>
>>> results = []
>>> for col in zip(*lsts):
... if not all(x == col[0] for x in col):
... results.append('x')
... else:
... results.append(col[0])
...
>>> results
['x', 2, 3, 'x']
替换'x'
为您想要的变量。
推荐阅读
- firebase - 文档数组的 Firestore 查询
- mysql - 列值相同时对值求和
- node.js - 如何使用用户发布的文章填充用户?
- php - 无法访问 HasManyThrough 关系中的中间表
- angular - 如何在 Angular2 中使用 TinyMCE
- javascript - 在 Material-UI Accordion 中添加表格行数据
- python - 使用 Python 在日期末尾添加一年
- python - 使用 Python 检查字符串值是否包含数字
- docker - k3s pod 没有安装在 helm 部署的 imagePullSecrets 中定义的秘密
- javascript - 表单验证的错误消息未出现