python - Python 列表理解——访问索引
问题描述
我将如何将其转换为列表理解?
queue_lengths = [0, 1, 2, 3]
for i, queue in enumerate(queue_lengths):
if queue > 0:
queue_lengths[i] = queue - 1
下面显然行不通,因为我们无权访问 i.
queue_lengths[i] = [(queue - 1) for i, queue in enumerate(queue_lengths) if queue > 0]
解决方案
我想通了,我只是需要更多的时间。
queue_lengths = [(queue - 1) if queue > 0 else queue for queue in queue_lengths]
推荐阅读
- windows - 批处理文件命令输出到名称中带有日期和时间的文件中
- excel - 复制工作表不起作用
- python-3.x - 在创建唯一列表 Python 时给出第二个索引的列表总和
- time-complexity - GCD迭代欧几里得算法的时间复杂度
- r - 当时如何为部分数据帧运行for循环?
- c# - 如何手动取消 .NET core IHostedService 后台任务?
- .htaccess - htaccess 重定向不起作用:重定向太多
- ios - 我应该在 64 位架构中使用 Int32 来代替 Int 或 Int64 吗?
- angular - 在 Angular 中,当父元素具有单击事件时,不会触发子项的更改事件
- objective-c - 为键值分配对象的问题