如何用Python写一个简单的通讯录

目录
  • 用Python写一个简单的通讯录
    • 一、构思
      • 1、定义空列表和一个空字典来存储
      • 2、定义功能选项
      • 3、添加通讯录功能
      • 3.2 删除学员功能
    • 二、整体项目演示

用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写通讯录的资料请关注我们其它相关文章!,希望大家以后多多支持我们!

(0)

相关推荐

  • Python编写通讯录通过数据库存储实现模糊查询功能

    1.要求 数据库存储通讯录,要求按姓名/电话号码查询,查询条件只有一个输入入口,自动识别输入的是姓名还是号码,允许模糊查询. 2.实现功能 可通过输入指令进行操作. (1)首先输入"add",可以对通讯录进行添加联系人信息. sql1 = 'insert into TA(ID,NAME,AGE,ADDRESS,TELENUMBER)' sql1 += 'values("%d","%s","%d","%s",

  • python实现简易通讯录修改版

    描述: 上一篇博客我写了一个简单的通讯录,但是还是觉得不够完美: 需要输入ID,虽然ID是主键,但是没有实现自增功能: 忘记加电话号码了: 如果插入用户名相同,则后续的查.改.删功能受到影响: 所以,我这个修改版主要修正了以上三点缺陷.具体如下 将用户ID设置为自增字段,即就是不用输入ID,程序会自动帮你将插入的用户进行排序并附上ID,默认从1开始:SQLite实现主键自增功能,请查看SQLiteAUTOINCREMENT/自动递增这篇博客. 创建表时增加了电话号码字段: 插入的用户名不能重复:

  • 一个简单的python程序实例(通讯录)

    核心代码: 复制代码 代码如下: #!/usr/bin/python#Filename:friendbook.pyimport cPickle as pimport sysimport timeimport os ab={'Xdex':'cneds@fnedf.com',        'Laexly':'fev@fe.com',        'Fukc':'fexok@ver.com',        'Stifu':'stif@qq.com'} def Dumpfile(list):   

  • Python实现命令行通讯录实例教程

    1.实现目标 编写一个命令行通讯录程序,可以添加.查询.删除通讯录好友及电话 2.实现方法 创建一个类来表示一个人的信息.使用字典存储每个人的对象,名字作为键. 使用pickle模块永久地把这些对象存储下来. 使用字典内建的方法添加.删除修改人员信息. 3.思维导图 4.编写伪代码 # 1.创建字典用来存储通讯录信息 # 2.创建人员类,包含姓名.关系.电话三个属性 # 3.创建操作类,包含增加.查询.删除人员,退出,保存并退出五个方法 # 4.程序运行 # 5.判断通讯录文件是否存在 # 6.

  • python数据库编程 ODBC方式实现通讯录

    Python 数据库编程,ODBC方式实现通讯录,供大家参考,具体内容如下 #-*-coding:utf-8-*- import pyodbc import os def SelectInfo(hcon,hcur): hcur.execute('select * from PassMapT') ptitle=('ID','Item','Pwd','other') print(ptitle) result=hcur.fetchall() for item in result: print(item

  • python实现学生通讯录管理系统

    本文实例为大家分享了python实现学生通讯录管理系统的具体代码,供大家参考,具体内容如下 功能模块分析: 1.首页(菜单功能) 2.添加学生 3.删除学生 4.修改学生 5.统计通讯录联系人人数 6.获取所有学生通讯信息 代码如下: def main(): while True: menu() number = int(input("请输入需要实现的操作的序号:")) if number==1: insert() #添加学生 if number==2: delete() #删除学生

  • python实现手机通讯录搜索功能

    本文实例为大家分享了python通过输入联系人首字母查询联系人的具体代码,供大家参考,具体内容如下 # -*- coding:utf-8 -*- # 练习2: # 模拟手机通讯录搜索功能 class PERSON(object): def __init__(self): self.name_list = ['zhangsan', 'zhangsanfeng', 'zhaoliu', 'wangwu', 'wulong', 'wanda', 'lisi', 'liuyang','luoxiaoxi

  • python数据库编程 Mysql实现通讯录

    本文实例为大家分享了Mysql实现通讯录的具体代码,供大家参考,具体内容如下 #-*-code:utf-8-*- import pymysql def CreateTable(): hcon=pymysql.connect(host='localhost',user='root',password='lptpwd',database='contract',charset='utf8') hcur=hcon.cursor() hcur.execute('drop table if exists c

  • 如何用Python写一个简单的通讯录

    目录 用Python写一个简单的通讯录 一.构思 1.定义空列表和一个空字典来存储 2.定义功能选项 3.添加通讯录功能 3.2 删除学员功能 二.整体项目演示 用Python写一个简单的通讯录 一.构思 1.定义空列表和一个空字典来存储 list1=[] #用于储存字典中的信息 dict1={} #用于储存联系人信息 2.定义功能选项 def Menu(): print('请选择功能--------\n' '1.添加学员\n' '2.删除学员\n' '3.修改学员\n' '4.查询学员\n'

  • 如何用python写一个简单的词法分析器

    编译原理老师要求写一个java的词法分析器,想了想决定用python写一个. 目标 能识别出变量,数字,运算符,界符和关键字,用excel表打印出来. 有了目标,想想要怎么实现词法分析器. 1.先进行预处理,把注释,多余的空格,空行去掉. 2.一行一行扫描,行里逐字扫描,把界符和运算符当做分割符,遇到就先停下开始判断. 若是以 英文字母.$.下划线开头,则可能是变量和关键字,在判断是关键字还是变量. 若是数字开头,则判断下一位是不是也是数字,直到遇到非数字停止,在把数字取出来. 再来判断分割符是

  • Python写一个简单上课点名系统(附源码)

    目录 一.准备工作 1.Tkinter 2.PIL 二.预览 1.启动 2.开始点名-顺序点名 3.开始点名-随机点名 4.手动加载人名单 5.开始点名-顺序点名-Pyqt5版本 三.思路 1.整体实现思路 2.点名实现思路 四.源代码 五.总结 一.准备工作 1.Tkinter Tkinter 是 python 内置的 TK GUI 工具集.TK 是 Tcl 语言的原生 GUI 库.作为 python 的图形设计工具,它所使用的 Tcl 语言环境已经完全嵌入到了 python 解释器中. 我们

  • Python写一个简单的在线编辑器

    直接奔入主题看下面pywebio程序,实现了Python的简陋在线编辑器 from pywebio.input import * from pywebio.output import put_text from os import system,remove try:     code = textarea('Code Edit Online', code={'mode': "python",'theme': 'darcula'}, value='# input your code h

  • 详解如何用python实现一个简单下载器的服务端和客户端

    话不多说,先看代码: 客户端: import socket def main(): #creat: download_client=socket.socket(socket.AF_INET,socket.SOCK_STREAM) #link: serv_ip=input("please input server IP") serv_port=int(input(("please input server port"))) serv_addr=(serv_ip,ser

  • javascript如何用递归写一个简单的树形结构示例

    现在有一个数据,需要你渲染出对应的列表出来: var data = [ {"id":1}, {"id":2}, {"id":3}, {"id":4}, ]; var str="<ul>"; data.forEach(function(v,i){ str+="<li><span>"+v.id+"</span></li>&

  • 用Python写一个无界面的2048小游戏

    以前游戏2048火的时候,正好用其他的语言编写了一个,现在学习python,正好想起来,便决定用python写一个2048,由于没学过python里面的界面编程,所以写了一个极其简单的无界面2048.游戏2048的原理和实现都不难,正好可以拿来练手,要是不知道这游戏的话,可以去网上查一下,或者下载一个到手机来玩一下,我就不在说其原理.我知道不放图的话大家一点兴趣都没,下面首先放一张游戏成型图,然后我们在来讲如何一步步用最基础的知识来实现. 一.生成4*4的矩阵 游戏的第一步便是生成一个4*4的矩

  • 如何用python写个模板引擎

    一.实现思路 本文讲解如何使用python实现一个简单的模板引擎, 支持传入变量, 使用if判断和for循环语句, 最终能达到下面这样的效果: 渲染前的文本: <h1>{{title}}</h1> <p>十以内的奇数:</p> <ul> {% for i in range(10) %} {% if i%2==1 %} <li>{{i}}</li> {% end %} {% end %} </ul> 渲染后的文本

  • 如何用 Python 制作一个迷宫游戏

    相信大家都玩过迷宫的游戏,对于简单的迷宫,我们可以一眼就看出通路,但是对于复杂的迷宫,可能要仔细寻找好久,甚至耗费数天,然后可能还要分别从入口和出口两头寻找才能找的到通路,甚至也可能找不到通路. 虽然走迷宫问题对于我们人类来讲比较复杂,但对于计算机来说却是很简单的问题.为什么这样说呢,因为看似复杂实则是有规可循的. 我们可以这么做,携带一根很长的绳子,从入口出发一直走,如果有岔路口就走最左边的岔口,直到走到死胡同或者找到出路.如果是死胡同则退回上一个岔路口,我们称之为岔口 A, 这时进入左边第二

  • 详解如何用Python写个听小说的爬虫

    目录 书名和章节列表 音频地址 下载 完整代码 总结 在路上发现好多人都喜欢用耳机听小说,同事居然可以一整天的带着一只耳机听小说.小编表示非常的震惊.今天就用 Python 下载听小说 tingchina.com的音频. 书名和章节列表 随机点开一本书,这个页面可以使用 BeautifulSoup 获取书名和所有单个章节音频的列表.复制浏览器的地址,如:https://www.tingchina.com/yousheng/disp_31086.htm. from bs4 import Beaut

随机推荐