Python,创建对象

我试图学习python,现在我试图获得类的挂起和如何操作他们与实例。

我似乎不能理解这个练习的问题:

创建并返回其名称,年龄和专业为的学生对象
与作为输入给出的那些相同

def make_student(name, age, major)

我只是不明白它是什么意思的对象,它们是否意味着我应该在保存这些值的函数内创建一个数组?或者创建一个类并让这个函数在里面,并分配实例? (在这个问题之前,我被要求设置一个名称,年龄和主要内部的学生类)

class Student:
    name = "Unknown name"
    age = 0
    major = "Unknown major"
class Student(object):
    name = ""
    age = 0
    major = ""

    # The class "constructor" - It's actually an initializer 
    def __init__(self, name, age, major):
        self.name = name
        self.age = age
        self.major = major

def make_student(name, age, major):
    student = Student(name, age, major)
    return student

注意,即使Python的哲学中的一个原则是“应该有一个,并且最好只有一个明显的方式来做”,但仍然有多种方法来做到这一点。您还可以使用以下两个代码片段来利用Python的动态功能:

class Student(object):
    name = ""
    age = 0
    major = ""

def make_student(name, age, major):
    student = Student()
    student.name = name
    student.age = age
    student.major = major
    # Note: I didn't need to create a variable in the class definition before doing this.
    student.gpa = float(4.0)
    return student

我喜欢前者,但有些情况下,后者可以是有用的 – 一个是使用文档数据库,如MongoDB。

http://stackoverflow.com/questions/15081542/python-creating-objects

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Python,创建对象