作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
这不是我想要的枚举:
>>> seasons = ['Spring', 'summer', 'fall', 'winter']
>>> list(enumerate(seasons, start =2))
[(2, 'Spring'), (3, 'summer'), (4, 'fall'), (5, 'winter')]
这是我想要枚举的功能:
>>> list(enumerate(seasons, start =2))
[(2, 'fall'), (3, 'winter')]
看出区别了吗?第一个只是说,“好吧,如果你真的想要我的话,我会把你的第 0 个元素称为 2”
第二个说,“我知道你只想从第二个索引开始循环,就像 range(2, len(seasons)) 那样”
有没有办法简单地用枚举来做到这一点?
最佳答案
为什么不只对前两个元素进行切片呢?
print(list(enumerate(seasons[2:], start=2)))
输出:
[(2, 'fall'), (3, 'winter')]
了解枚举和开始的情况。尝试遍历它以查看它的输出:
for i, v in enumerate(seasons, start=2):
print(i, v)
如您所见,i
从 2 开始,它只是随着遍历 seasons
列表而递增。但列表中的每个值实际上都是从头开始的你的名单。这只是进一步证明 start
与列表迭代的实际起点没有任何关系。
关于python - 跳过枚举中的前两个元素——python,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36479158/
我是一名优秀的程序员,十分优秀!