繁体   English   中英

Python在for循环中创建对象

[英]Python create objects in for loop

我有一个类来分配一些参数:

class body:
    def __init__(self, name, number, L):
        self.name = name
        self.number = number
        self.L = L

我想将这些参数分配给10个几乎相同的物体,如:

for i in range(0, 10):
    body[i].name = "test_name"
    body[i].number = i
    body[i].L = 1.

并且可以改变,比如说,身体3的参数L从1到2:

body[3].L = 2

非常感谢你的帮助。

请注意, body是一个类。 使用body[i]建议您可能打算将body用作列表。 如果要创建10个body 实例的列表,请不要将列表body命名。 您可以改为将列表命名为bodies ,并用它定义列表理解

bodies = [body("test_name", i, 1.) for i in range(0, 10)]
bodies[3].L = 2

顺便说一下, PEP8样式指南建议所有类都遵循CapWords惯例 所以为了符合惯例, body应该是Body 按照这个惯例,每个阅读代码的人都会立即理解什么是类,什么不是。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM