2017-04-17 67 views
0

我試圖解決被描述爲一個Python的問題:Python的訪問和mutator方法

設計持有以下個人數據的類:姓名,地址,年齡 和電話號碼。編寫適當的訪問器和增變器方法。 另外,編寫一個程序來創建這個類的三個實例。其中一個 實例應該包含您的信息,另外兩個應該包含您的朋友或家人的信息 。

我很難從哪裏走。我認爲我有90%的正確,但我缺少主要功能代碼。我的代碼如下:

class Person: 
    def __init__(self, name, address, age, phone): 
     self.__name = name 
     self.__address = address 
     self.__age = age 
     self.__phone_number = phone 

    #Set methods 
    def set_name(self,name): 
     self.__name = name 
    def set_address(self,address): 
     self.__address = address 
    def set_age(self,age): 
     self.__age = age 
    def set_phone(self,phone): 
     self.__phone = phone 


    #Get methods 
    def get_name(self): 
     reurn self.__name 
    def get_address(self): 
     reurn self.__address  
    def get_age(self): 
     reurn self.__age 
    def get_phone(self): 
     reurn self.__phone 

def main(): 

#not sure what to put here????? 

main() 
+1

你已經完成了所有的辛苦工作,只是創建3個實例。所以'我= Person('名字','地址',20,'[email protected]')'用正確的數據。 –

+0

不確定,但「適當的訪問器和增變器方法」可能涉及'@ property'和'@ x.setter'。看看[這篇文章](http://www.python-course.eu/python3_properties.php)的解釋。 – Synedraacus

回答

1

您已經創建了對象的藍圖。這是你的Person類。現在是時候建立一些Person的。你可以做到這一點與

p1 = Person("Your Name", "Address", 12, "phone_number") 
p2 = etc 
p3 = etc 

您可以從例如你的對象訪問您的getter和setter方法

p1.set_name("Joe") 
print(p1.get_name()) # outputs "Joe"