python3.5如何用class

ldzsl發表於2021-09-11

python3.5如何用class

Python中所有的資料都是物件,它提供了許多高階的內建資料型別,功能強大,使用方便,是Python的優點之一。那麼什麼時候使用自

定義類呢?比如設計一個Person類,如果不使用自定義類,可以這樣做:

person=['mike', 23, 'male']  #0-姓名, 1-年紀, 2-性別
print(person[0], person[1], person[2])

可以看到,使用內建型別list,需要用下標來引用成員資料,不直觀。可以改用dic型別來做:

person1={'name':'mike', 'age': 23, 'sex': 'male'}
person2={'name':'hellen', 'age': 20, 'sex': 'female'}
print(person1['name'], person1['age'], person1['sex'])

這樣不用記憶下標,直觀多了。但是字典的語法仍然有些麻煩,如果能夠像這樣引用:person.name,person.age等,就更好。這就是自定義類存在的好處了:

class Person:
    def __init__(self, name, age, sex):
        self.name = name
        self.age = age
        self.sex = sex
    def __str__(self): #過載該函式便於測試
        sep = ','
        return self.name+sep+str(self.age)+sep+self.sex
person1 = Person('mike', 23, 'male') 
person2 = Person('hellen', 20, 'female')
print(person1)
print(person2.name, person2.age, person2.sex)

可以看到,只要定義好這個類的建構函式,就可以很方便的生成這個類的例項,並且引用資料成員也很方便,比直接使用內建型別方便多了。其實Python就是用內建型別dic來實現自定義類的成員的儲存和引用的,從這個角度來看,自定義類是內建類的簡化使用方式,內建型別是自定義型別內部必要的組成部分。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2325/viewspace-2835393/,如需轉載,請註明出處,否則將追究法律責任。

相關文章