好的,我将尝试使用Python OOP创建一个联系人应用程序。我对OOP相当新,并且仍在努力理解相关概念。
我知道类是所有对象的蓝图。我喜欢把类看作实体,每个对象都是该实体的记录。由于我的背景是数据库,所以我会这样理解,如果有不对的地方,请指出。
在我的联系人应用程序中,我创建了以下类Contacts
:
class Contacts():
def __init__(self, firstName, lastName, address, groupType,
telephone, mobile, email, photoField):
self.firstName = firstName
self.lastName = lastName
self.address = address
self.groupType = groupType
self.telephone = telephone
self.mobile = mobile
self.email = email
self.photoField = photoField
def showDetails(self):
print("First Name:\t", self.firstName)
print("Last Name:\t", self.lastName)
print("Address:\t", self.address)
print("Telephone:\t", self.telephone)
print("Mobile:\t", self.mobile)
print("Email:\t", self.email)
现在,如果我想通过Contacts类向我正在使用的列表中添加联系人对象,我是需要创建一个AddContacts类还是创建一个函数呢?我不知道我是否能够清楚地表达我的意思?
我想说的是,添加联系人是一个过程,如果你从数据库的角度来看,你不会创建一个名为“tbl_AddContacts”的表,因为你可以通过查询或存储过程来完成这个任务,所以在我的观点中,我会把添加联系人定义为一个函数。但是我的同事告诉我,添加联系人应该由一个类来定义。
对我来说,这是一个令人困惑的概念,特别是我不知道如何将AddContacts类与Contacts类链接起来,甚至不知道如何首先定义AddContacts类!
以下是我为添加联系人定义的函数:
def addContacts():
firstName = input("First Name: ")
lastName = input("Last Name: ")
address = input("Address: ")
telephone = input("Telephone: ")
mobile = input("Mobile: ")
email = input("Email: ")
print("\n")
contact = Contacts(firstName, lastName, address, None, telephone, mobile, email, None)
contactsList.append(contact)
pickle.dump(contactsList, open("save.p", "wb"))
请帮我一下,因为我将把它转化为图形用户界面应用程序(大学作业)。