Python实现简易通讯录管理系统:功能详解与代码示例

阿橙
阿橙
发布时间:2026-10-14| 6人浏览过
原创

本文详细介绍如何使用Python编写一个简易的通讯录管理系统。通过定义列表和字典存储数据,利用函数封装添加、删除、修改、查询、显示及退出等功能,并结合while循环实现交互界面。文章提供完整代码逻辑与运行演示,帮助初学者掌握Python基础数据结构与流程控制的应用。

使用Python开发一个简单的通讯录管理程序

一、设计思路

1、初始化一个空列表和一个空字典用于数据存储


list1=[]  #用于储存字典中的信息
dict1={}  #用于储存联系人信息

2、定义系统功能菜单选项


def Menu():
    print('请选择功能--------\n'
          '1.添加学员\n'
          '2.删除学员\n'
          '3.修改学员\n'
          '4.查询学员\n'
          '5.显示所有学员\n'
          '6.退出系统\n'
          '----------------')

3、实现通讯录各项核心功能

3.1 实现添加学员功能

#添加学员
def Add():
    id=input('请输入学号:')
    name=input('请输入姓名:')
    tel=input('请输入手机号:')
    dict1={'id':id,'name':name,'tel':tel}
    list1.append(dict1)  #将字典内容添加到列表中
    print(list1)

至此,添加学员的功能逻辑已完成

3.2 实现删除学员功能

#删除学员
def Del():
    name=input('请输入要删除的学员的姓名:')
    i=0  #索引
    for item in list1:  #循环列表中的内容
        i+=1
        if name in item['name']:  #判断要删除学员的姓名与列表中嵌套的字典姓名相同时
            del list1[i-1]   #删除列表索引-1的内容
            print(list1)
        else:
            print('并无此学员...')
3.3 实现修改学员信息功能

#修改学员
def Update():
    name=input('请输入要修改的学员的姓名:')
    tel=input('请输入新的手机号:')
    i=0  #索引
    for item in list1:
        i+=1
        if name in item['name']:
            list1[i-1]['tel']=tel  #修改列表索引-1中嵌套的字典内容,旧tel修改为新的手机号
            print(list1)
        else:
            print('并无此学员...')

3.4 实现查询学员信息功能

#查询学员
def Select():
    name=input('请输入要查询的学员的姓名:')
    for item in list1:
        if name in item['name']:
            print('查询到的学员信息如下--------')
            print('学员的学号是%s,姓名是%s,手机号是%s' % (item['id'],item['name'],item['tel']))
        else:
            print('查无此人...')
3.5 实现显示所有学员信息功能

#显示所有学员
def ShowAll():
    print('学号 姓名 手机号')
    for item in list1:
        print(item['id'],item['name'],item['tel'])
3.6 实现退出系统功能

#退出系统
def Quit():
    YesNo=input('确定要退出吗,yes or no?')
    if YesNo=='yes':
        quit()

4、使用循环结构调用所有功能函数


while True:
    Menu()
    num=int(input('请输入功能序号:'))
    if num==1:
        Add()
    elif num==2:
        Del()
    elif num==3:
        Update()
    elif num==4:
        Select()
    elif num==5:
        ShowAll()
    elif num==6:
        Quit()
    else:
        print('无效选项-----')

二、完整项目运行演示


请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:001
请输入姓名:张
请输入手机号:111
[{'id': '001', 'name': '张', 'tel': '111'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:002
请输入姓名:李
请输入手机号:222
[{'id': '001', 'name': '张', 'tel': '111'}, {'id': '002', 'name': '李', 'tel': '222'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:1
请输入学号:003
请输入姓名:王
请输入手机号:333
[{'id': '001', 'name': '张', 'tel': '111'}, {'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '333'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:2
请输入要删除的学员的姓名:张
[{'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '333'}]
并无此学员...
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:3
请输入要修改的学员的姓名:王
请输入新的手机号:666
并无此学员...
[{'id': '002', 'name': '李', 'tel': '222'}, {'id': '003', 'name': '王', 'tel': '666'}]
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:4
请输入要查询的学员的姓名:王
查无此人...
查询到的学员信息如下--------
学员的学号是003,姓名是王,手机号是666
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:5
学号 姓名 手机号
002 李 222
003 王 666
请选择功能--------
1.添加学员
2.删除学员
3.修改学员
4.查询学员
5.显示所有学员
6.退出系统
----------------
请输入功能序号:6
确定要退出吗,yes or no?yes
 
Process finished with exit code 0

以上即为使用Python编写简易通讯录的完整内容,更多Python相关技术资料欢迎持续关注本站其他文章,感谢您的支持!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。