python - 如何访问 Python 列表中每个循环的三个项目?
问题描述
我有一个列表,其中每 3 个元素应该定义一个对象。我想知道 Python 中是否有一个函数可以一次迭代三个列表中的项目,或者以某种方式通过列表理解(我做不到)来提高效率,因为实际列表非常大的。
我所做的是将列表的长度除以 3 以在其中迭代的次数相当于其元素总数的三分之一 (1/3),从而访问这三个元素并增加其三个索引(对于下一次迭代)在每个循环中。
我的代码有效,我只是想避免重新发明轮子,以防万一有更好的东西。
data = ["John", "Doe", 30, "Jane", "Doe", 28] # Example data
persons=[] # Processed data
class Person:
def __init__(self, name, lastname, age):
self.name = name
self.lastname = lastname
self.age = age
x, y, z = 0, 1, 2 # Index
for i in range( int(len(data) / 3) ): # Iterates every 3 elements
persons.append( Person(data[x], data[y], data[z]) ) # Create objects
x+=3; y+=3; z+=3 # Index increment
解决方案
推荐阅读
- azure - 如何使用 REST API 或 Nodejs SDK 将 Azure 虚拟机与日志分析工作区连接起来?
- javascript - 为threejs创建一个弯曲的网格
- angular - Amazon AWS Amplify NestJs - 托管自己的前端和后端
- reactjs - 如何将 React 应用程序集成到 webflow 页面中
- wix - 在 Wix 中设置多个组件的条件
- java - 我们可以同时使用 new 关键字创建 Bean 和对象吗?
- github - 有没有办法根据标签名称获取 GitHub PR 列表?
- html - 如何在另一个目标状态 css 和子级中使用目标状态 css?
- javascript - 限制同时访问多个网页
- javascript - 使用其中的道具数据实例化扩展的 VueJS 组件