首页 > 编程知识 正文

Python简易电话簿系统

时间:2023-11-19 20:56:52 阅读:291195 作者:BJGL

本篇文章将为您介绍如何使用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简易电话簿系统的创建过程,希望对初学者有所帮助。您可以在以上代码基础上继续扩展,实现更多的功能,让电话簿系统更加实用!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。