本篇文章将为您介绍如何使用Python语言创建一个简易电话簿系统。电话簿系统是一种十分实用的工具,可以帮助人们记录并管理自己的联系人信息。我们将通过多个方面详细阐述Python简易电话簿系统的创建过程,包括基础数据结构、数据操作、用户交互等。
一、基础数据结构
在创建电话簿系统之前,我们需要先了解并定义一些基础的数据结构。在这里,我们可以使用Python中的字典(Dictionary)来存储我们的联系人信息。字典是一种非常方便的数据结构,可以存储key-value键值对,而且具有快速的查找和插入速度。我们可以将电话簿系统中一个联系人的信息定义为一个字典,如下所示:
{
'name': 'John Smith',
'phone': '1234567890',
'email': 'johnsmith@email.com',
'address': '123 Main St, Anytown, USA'
}
在这个字典中,我们将联系人的姓名、电话、电子邮件和地址分别存储为键值对。接下来,我们需要定义一个列表(List)来存储所有联系人的信息。这里,我们可以将每个联系人的字典作为一个元素存储在列表中,如下所示:
contacts = [
{
'name': 'John Smith',
'phone': '1234567890',
'email': 'johnsmith@email.com',
'address': '123 Main St, Anytown, USA'
},
{
'name': 'Jane Doe',
'phone': '9876543210',
'email': 'janedoe@email.com',
'address': '456 Elm St, Anytown, USA'
}
]
在这个列表中,我们包含了两个联系人的信息。随着我们不断添加和删除联系人,这个列表的长度会不断变化。
二、数据操作
有了基本的数据结构之后,接下来我们需要实现一些基本的数据操作,包括添加、删除、查找和修改联系人信息。我们可以使用Python中的函数来实现这些操作。
1、添加联系人信息
要添加一条联系人信息,我们需要用户输入姓名、电话、电子邮件和地址等信息。然后,我们可以将这些信息添加到contacts列表中,如下所示:
def add_contact(contacts):
name = input('请输入联系人姓名:')
phone = input('请输入联系人电话:')
email = input('请输入联系人电子邮件:')
address = input('请输入联系人地址:')
contact = {
'name': name,
'phone': phone,
'email': email,
'address': address
}
contacts.append(contact)
在这个函数中,我们首先提示用户输入联系人信息,然后将这些信息存储在一个新的字典中。最后,我们使用列表的append()方法将这个字典添加到contacts列表中。
2、删除联系人信息
要删除一条联系人信息,我们需要先查找这个联系人的信息,然后将其从contacts列表中删除。下面是实现这个功能的代码:
def delete_contact(contacts):
name = input('请输入要删除的联系人姓名:')
for i in range(len(contacts)):
if contacts[i]['name'] == name:
del contacts[i]
print(f'{name}的联系人信息已被删除!')
return
print(f'{name}的联系人信息不存在!')
在这个函数中,我们首先提示用户输入要删除的联系人姓名,然后遍历整个contacts列表,查找与输入姓名相匹配的联系人信息。如果找到了匹配的联系人信息,我们就使用列表的del语句将其从列表中删除。如果没有找到匹配的信息,则打印出对应的提示信息。
3、查找联系人信息
要查找一条联系人信息,我们需要先提示用户输入要查找的联系人姓名,然后遍历整个contacts列表,查找与输入姓名相匹配的联系人信息。找到对应的信息后,我们打印出所有相关信息。下面是实现这个功能的代码:
def search_contact(contacts):
name = input('请输入要查找的联系人姓名:')
for contact in contacts:
if contact['name'] == name:
print('联系人信息如下:')
print(f"姓名:{contact['name']}")
print(f"电话:{contact['phone']}")
print(f"电子邮件:{contact['email']}")
print(f"地址:{contact['address']}")
return
print(f'{name}的联系人信息不存在!')
在这个函数中,我们首先提示用户输入要查找的联系人姓名,然后遍历整个contacts列表,查找与输入姓名相匹配的联系人信息。如果找到了匹配的联系人信息,我们就打印出所有相关信息。如果没有找到匹配的信息,则打印出对应的提示信息。
4、修改联系人信息
要修改一条联系人信息,我们需要先查找这个联系人的信息,然后提示用户输入新的联系人信息。下面是实现这个功能的代码:
def modify_contact(contacts):
name = input('请输入要修改的联系人姓名:')
for contact in contacts:
if contact['name'] == name:
contact['phone'] = input('请输入新的电话号码:')
contact['email'] = input('请输入新的电子邮件:')
contact['address'] = input('请输入新的地址:')
print(f'{name}的联系人信息已被修改!')
return
print(f'{name}的联系人信息不存在!')
在这个函数中,我们首先提示用户输入要修改的联系人姓名,然后遍历整个contacts列表,查找与输入姓名相匹配的联系人信息。如果找到了匹配的联系人信息,我们就提示用户输入新的联系人信息,并修改对应的键值对。如果没有找到匹配的信息,则打印出对应的提示信息。
三、用户交互
创建好基础数据结构并实现了基本的数据操作之后,接下来我们需要考虑如何实现和用户的交互。具体来说,我们需要实现以下几个功能:显示菜单、执行用户选择的操作、循环执行直到用户选择退出系统。
1、显示菜单
我们首先需要在控制台上显示一个菜单,供用户选择要进行的操作。下面是实现这个功能的代码:
def print_menu():
print('电话簿系统菜单:')
print('1. 添加联系人')
print('2. 删除联系人')
print('3. 查找联系人')
print('4. 修改联系人')
print('5. 退出系统')
在这个函数中,我们使用print()函数打印出菜单中列出的各个选项。
2、执行用户选择的操作
在用户选择菜单中的某个选项之后,我们需要执行对应的操作。下面是实现这个功能的代码:
def main():
contacts = []
while True:
print_menu()
option = input('请输入要执行的操作编号:')
if option == '1':
add_contact(contacts)
elif option == '2':
delete_contact(contacts)
elif option == '3':
search_contact(contacts)
elif option == '4':
modify_contact(contacts)
elif option == '5':
print('感谢使用电话簿系统!')
break
else:
print('请输入正确的操作编号!')
在这个函数中,我们首先定义了一个空的contacts列表,然后使用一个while循环来循环执行以下操作:打印菜单、提示用户输入要执行的操作编号、根据用户输入执行对应的操作、如果用户输入的操作编号为5,则退出循环。
四、完整代码
最后,让我们来看一下完整的代码:
def add_contact(contacts):
name = input('请输入联系人姓名:')
phone = input('请输入联系人电话:')
email = input('请输入联系人电子邮件:')
address = input('请输入联系人地址:')
contact = {
'name': name,
'phone': phone,
'email': email,
'address': address
}
contacts.append(contact)
def delete_contact(contacts):
name = input('请输入要删除的联系人姓名:')
for i in range(len(contacts)):
if contacts[i]['name'] == name:
del contacts[i]
print(f'{name}的联系人信息已被删除!')
return
print(f'{name}的联系人信息不存在!')
def search_contact(contacts):
name = input('请输入要查找的联系人姓名:')
for contact in contacts:
if contact['name'] == name:
print('联系人信息如下:')
print(f"姓名:{contact['name']}")
print(f"电话:{contact['phone']}")
print(f"电子邮件:{contact['email']}")
print(f"地址:{contact['address']}")
return
print(f'{name}的联系人信息不存在!')
def modify_contact(contacts):
name = input('请输入要修改的联系人姓名:')
for contact in contacts:
if contact['name'] == name:
contact['phone'] = input('请输入新的电话号码:')
contact['email'] = input('请输入新的电子邮件:')
contact['address'] = input('请输入新的地址:')
print(f'{name}的联系人信息已被修改!')
return
print(f'{name}的联系人信息不存在!')
def print_menu():
print('电话簿系统菜单:')
print('1. 添加联系人')
print('2. 删除联系人')
print('3. 查找联系人')
print('4. 修改联系人')
print('5. 退出系统')
def main():
contacts = []
while True:
print_menu()
option = input('请输入要执行的操作编号:')
if option == '1':
add_contact(contacts)
elif option == '2':
delete_contact(contacts)
elif option == '3':
search_contact(contacts)
elif option == '4':
modify_contact(contacts)
elif option == '5':
print('感谢使用电话簿系统!')
break
else:
print('请输入正确的操作编号!')
if __name__ == "__main__":
main()
以上就是Python简易电话簿系统的创建过程,希望对初学者有所帮助。您可以在以上代码基础上继续扩展,实现更多的功能,让电话簿系统更加实用!