python - 创建依赖于另一个列表的列表
问题描述
我有一个包含足球转会年龄的列表。每次从转入俱乐部和转出俱乐部的转会变化"Age"
都出现在列表中。
因此,我想创建一个新列表,其中"in"
包含"out"
要标记的元素以进行传输。
ages = ["Age", "23", "20", "18", "Age", "23", "14", "Age", "35", "32", "24", "Age", "35"]
预期输出:
in_out = ["Age", "in", "in", "in", "Age", "out", "out", "Age", "in", "in", "in", "Age", "out"]
非常感谢任何帮助!
解决方案
您可以尝试使用单行列表理解:
print([['out', 'in'][ages[:i].count('Age') % 2] if v != 'Age' else v for i, v in enumerate(ages)])
或者您可以尝试使用 for 循环:
ages = ["Age", "23", "20", "18", "Age", "23", "14", "Age", "35", "32", "24", "Age", "35"]
x = 'out'
for i, v in enumerate(ages):
if v == 'Age':
x = ['in', 'out'][x == 'in']
else:
ages[i] = x
print(ages)
两个输出:
['Age', 'in', 'in', 'in', 'Age', 'out', 'out', 'Age', 'in', 'in', 'in', 'Age', 'out']
推荐阅读
- sql - 如何在 SQL Developer 中编辑 XML 列?
- ios - 为什么我的for循环在viewDidLoad中放不完?
- audio - 如何避免在 Safari 中开始播放音频文件时出现延迟
- eclipse - Eclipse Orion WebIDE 中的 Sap UI 核心库问题
- xml - 使用 XSL 将 XML 从 Get 转换为 AddChange
- c# - “Microsoft.IdentityModel.Tokens, Version=5.6.0.0”和“Microsoft.IdentityModel, Version=3.5.0”中都存在“SecurityTokenDescriptor”类型。
- symfony4 - 使用自定义操作类时,Symfony 验证不适用于 Api 平台
- python - 如何在 pyinstaller 中添加静态(html、css、js 等)文件以创建独立的 exe 文件?
- reactjs - 来自 formik-material-ui-pickers 的两个 Datepicker 发生碰撞
- javascript - 基于 URL 锚点显示内容