将列表中的元素添加到类对象中

时间:2016-11-17 22:21:38

标签: python python-3.x

我有一个班级Animal,其中包含NameAgeGenderSpecies属性。我有一个包含这样的分割元素的列表:

li = ['George', '23', 'Monkey', 'Male', 'Mike', '31', 'Racoon', 'Male']

现在我想一次取四个元素,并添加到新的Animal个对象。 我真的无法弄清楚如何做到。有人可以帮我这个吗?

1 个答案:

答案 0 :(得分:0)

这可以帮助您入门:

class Animal(object):
    def __init__(self, Name, Age, Species, Gender):
        self.name = Name
        self.age = Age
        self.species = Species
        self.gender = Gender

li = ['George', '23', 'Monkey', 'Male', 'Mike', '31', 'Racoon', 'Male']

first_animal = Animal(*li[0:4])
second_animal = Animal(*li[4:])

print("""
First Animal is:
gender: {0.gender}
age: {0.age}
name: {0.name}
species: {0.species}""".format(first_animal))

输出:

First Animal is:
gender: Male
age: 23
name: George
species: Monkey

一个简短的解释,“列表的分块”可以通过多种方式完成,我只是选择使用*splat operatorslice内容。

从本教程Learn Python the Hard Way借阅了该类中的对象,页面底部为“头等示例”。

我没有把这些新的类对象放到一个新的列表中,但是因为python中的所有东西都是一个对象,并且你知道如何像你在问题中那样创建列表,所以我会把那些琐碎的部分留下来。 / p>

希望这有帮助。