说实话,第一次写这么长的Python代码,期间遇到了很多问题,但是,最终还是完成了,花了我一天半的时间。

该程序实现了用户的增,删,改,查,主要用到sqlite3模块。对于该模块的知识点,请查看我的另一篇文章SQLite-Python

如有更好的建议,请私信,本人将不胜荣幸,让我们一起来学习Python!

#-*- coding:utf-8 -*-

import sqlite3

#打开本地数据库用于存储用户信息

conn = sqlite3.connect('mysql_person.db')

#在该数据库下创建表,创建表的这段代码在第一次执行后需要注释掉,否则再次执行程序会一直提示:该表已存在

conn.execute('''CREATE TABLE MT

(ID INT PRIMARY KEY NOT NULL,

NAME TEXT NOT NULL,

AGE INT NOT NULL,

ADDRESS CHAR(50),

SALARY REAL);''')

print "Table created successfully";

conn.close()

#增加用户信息

def insert():

ID = input('请输入用户ID:\n')

NAME = raw_input('请输入用户昵称:\n')

AGE = input('请输入年龄:\n')

ADDRESS = raw_input('请输入用户地址:\n')

SALARY = input('请输入用户薪水:\n')

sql1 = 'insert into MT(ID,NAME,AGE,ADDRESS,SALARY)'

sql1 += 'values("%d","%s","%d","%s","%d");'%(ID,NAME,AGE,ADDRESS,SALARY)

conn.execute(sql1)

conn.commit()

print "Records insert successfully"

#删除用户信息

def delete():

name = raw_input("请输入所要删除的联系人姓名:")

cursor = conn.execute("SELECT name from MT where name = '%s';"%name)

for row in cursor:

if name == row[0]:

conn.execute("DELETE from MT where name = '%s';"%name)

conn.commit()

print "Records delete successfully"

break

else:

print "sorry,不存在该用户"

#修改用户信息

def modify():

name = raw_input("请输入要修改用户的姓名:")

print search()

sql4 = "SELECT id, name, age,address, salary from MT where name = '%s';"%name

cursor = conn.execute(sql4)

x = raw_input("请输入要修改用户的新地址:")

y = input("请输入要修改用户的新年龄:")

z = input("请输入要修改用户的新薪水:")

sql3 = "UPDATE MT set address = '%s',age = '%d',\

salary = '%d' where name = '%s';"%(x,y,z,name)

conn.execute(sql3)

conn.commit()

print "修改成功"

sql5 = "SELECT id, name, age,address, salary from MT where name = '%s';"%name

cursor = conn.execute(sql5)

for row in cursor:

print "ID = ", row[0]

print "NAME = ", row[1]

print "AGE = ",row[2]

print "ADDRESS = ", row[3]

print "SALARY = ", row[4], "\n"

#查询用户信息

conn = sqlite3.connect('mysql_person.db')

def search():

conn = sqlite3.connect('mysql_person.db')

name = raw_input('请输入要查询的用户姓名')

sql2 = "SELECT id,name,age, address, salary from MT where name= '%s';" % (name)

cursor = conn.execute(sql2)

for row in cursor:

print "ID = ", row[0]

print "NAME = ", row[1]

print "AGE = ",row[2]

print "ADDRESS = ", row[3]

print "SALARY = ", row[4], "\n"

break

else:

print "sorry,没有该用户信息"

#显示所有用户信息

def showall():

cursor = conn.execute("SELECT id, age, name, address, salary from MT")

for row in cursor:

print "ID = ", row[0]

print "NAME = ", row[1]

print "AGE = ",row[2]

print "ADDRESS = ", row[3]

print "SALARY = ", row[4], "\n"

print "Operation done successfully";

cursor = conn.execute("select count(*) from MT;")

for row in cursor:

print "一共有%d个用户"%row[0]

def menu():

print '1.新增联系人'

print '2.删除联系人'

print '3.修改联系人'

print '4.查询联系人'

print '5.显示所有联系人'

print '6.退出程序'

print 'What do you want to do?'

while True:

menu()

x = raw_input('请输入您的选择菜单号:')

if x == '1':

insert()

continue

if x == '2':

delete()

continue

if x == '3':

modify()

continue

if x == '4':

search()

continue

if x == '5':

showall()

continue

if x == '6':

print "谢谢使用!"

exit()

continue

else:

print "输入的选项不存在,请重新输入!"

continue

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持聚米学院。

python 通讯录系统_Python实现通讯录功能相关推荐

  1. python 通讯录系统_Python基础项目:手机通讯录系统

    完成简易手机通讯录管理系统,包括以下功能: 能够循环接收客户端输入的功能编号,并根据编号选择对应的功能操作 用户输入"1"时,执行增加姓名和手机号码的操作 用户输入"2& ...

  2. python图像识别系统_Python图像处理之图片文字识别功能(OCR)

    OCR与Tesseract介绍 将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR).可以实现OCR 的底层库并不多,目前很多库都是使用共同的几 ...

  3. java个人通讯录系统_JSP个人通讯录系统

    本文简述了国内外通讯录发展现状,并对通讯录发展现状进行了深度剖析,并根据需求提出了在MyEclipse中整合SSH的平台上开发个人通讯录系统的项目计划.SSH即Struts,Spring,Hibern ...

  4. python 通讯录系统_Python下的通讯录

    Python 下的通讯录 1 .课题需求 1.1 系统开发的目标和思想 随着社会的发展 , 人际关系变得越来越重要,为了保持良好的人际关系,必须经常与亲 戚.朋友.同学.同事保持联系,但是有时候存在着 ...

  5. python实验报告内容实现购物车系统_Python 实践--购物车功能简单实现

    实验环境: operating system: Centos 6.3 Python version:Python 2.6.6 知识点: Python 基本数据类型的常用操作 #!/usr/bin/en ...

  6. php通讯录系统,EML企业通讯录管理系统 php版 v5.4

    企业通讯录管理系统,向企业员工随时随地的提供企业通讯录信息,用户可在手机端实时查看人员联系方式,拨打电话等全面提高了企业内部沟通效率. 主要功能有:用户管理(添加用户,删除用户用户,更新用户资料):通 ...

  7. 安卓通讯录系统mysql_Android手机通讯录项目开发--联系人数据库contacts2.db介绍

    项目描述:该项目为基于Android平台的手机通讯录,主要模块分为四个部分:联系人管理模块,通话记录管理模块,短信管理模块,系统设置模块. 系统结构图如下: 本项目启动时间:2014年5月28日 说明 ...

  8. python注册系统_Python制作简易注册登录系统

    Python制作简易注册登录系统 这篇文章主要为大家详细介绍了 Python 简易注册登录系统的制作方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 Python 是一种面向对象.解释型计算机程 ...

  9. python数据分析系统_Python数据分析,系统步骤介绍!

    原标题:Python数据分析,系统步骤介绍! 摘要 在用Python做数据分析的过程中,有一些操作步骤和逻辑框架是很固定的,只需要记住其用法即可.本节内容介绍Pandas模块在数据分析中的常用方法. ...

最新文章

  1. 吴明曦:马斯克的天基互联网与未来6G地基互联网优劣比较分析
  2. 回调函数与Delphi的事件模型
  3. asp接收ajax乱码_Asp中处理AJAX乱码问题总结
  4. 如何在ESX下抓取数据包
  5. OpenGL开发库的详细介绍
  6. 雷军:明年2千元以上支持5G的手机,至少发布10款
  7. 苹果为 macOS 重大漏洞道歉;迅雷内讧股价暴跌;小米百度在一起 | 一周业界事
  8. 一些常用的正交试验表生成: 单一水平、混合水平、交互作用
  9. 浙江大学概率论与数理统计第四版考研真题和课后答案
  10. 前端项目——当当图书网(javaScript)
  11. js 弹窗中写html代码,简单了解JavaScript弹窗实现代码
  12. 高通9008端口刷linux,高通命令进入9008端口方式汇总
  13. 计算机应用基础谭忠兵,全程导学 | 第19期 足履实地,无畏远方——专访谭忠兵老师...
  14. 《费曼学习法》读书笔记
  15. 关于【软件测试-自动化测试之面试技巧和注意事项】——侃侃而谈
  16. ERP实施-有色金属-铜冶炼
  17. No silver bullet——没有银弹理论
  18. Fleck说明文档翻译
  19. 【GamePlay】时空回溯效果
  20. Python验证信用卡号的有效性(算法)(称为Luhn检测或者mod 10 检测)

热门文章

  1. Proteus软件下载安装(包含win10安装proteus8.0+报错问题解决)
  2. SQL将两列合并为一列
  3. 如何在iPhone或iPad上使用Safari下载文件
  4. 溢折价摊销的实际利率法
  5. 尚学堂Java学习日记Day1
  6. ai作文批改_AI能批改英语作文了 专业度堪比高考阅卷老师 可自动批改雅思、四六级英语作文...
  7. 关于32位系统中int、float、short、double等占多少个字节
  8. c 汇编语言小程序100例,汇编语言小程序例子.doc
  9. android gps定位完整代码,android GPS定位 (完整代码实例)
  10. 常用的生成UUID工具类