提供对象属性的最佳方式?

时间:2015-10-15 08:00:22

标签: python

我有一个基类,我需要创建这个类的70个对象。基类有6个属性,这些属性也需要设置。

因为我知道每个对象的每个属性的值,所以最好的方法是将它们输入。我可以想到两种方法。

1-创建一个python文件,我在其中创建这70个对象并为每个对象设置属性。这会导致代码中出现大量重复,并且还会使值更改有点复杂。

2-我可以将所有这些文件存储在一个文本文件中。逐行读取它们,然后在循环中每次创建一个新对象,并将其属性设置为此迭代中读取的值。这样可以保持我的赋值代码简洁,并且还可以将属性值保存在文本文件中。

我更喜欢第二个,任何想法/建议?

1 个答案:

答案 0 :(得分:0)

假设该类有一个构造函数,您可以使用该构造函数创建属性。

无论如何,你必须把对象放在某个地方。如果您要将它们放入某种容器中,您可以使用列表或类似方法更紧凑地编写它:

attribute_list = [ ( 1, 2, 3, 4, 5, 6),
                  (11,12,13,14,15,16),
                   # and so on
         ]

for attrs in attribute_list:
    container.append( TheClass( *attrs ) )

如果你没有把物品放在一个容器或类似物中,那么它就没那么希望它变得更紧凑了,你基本上不得不诉诸:

obj1 = TheClass( 1, 2, 3, 4, 5, 6 )
obj2 = TheClass( 11, 12, 13, 14, 15, 16 )
# etc