說實話,第一次寫這麼長的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("請輸入要修改使用者的新薪水:")
s程式設計客棧ql3 = "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 cursdburyior:
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 showaldburyil():
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實現通訊錄功能
本文位址:
實現簡單功能的通訊錄
1 定義聯絡人類addresscontact。例項變數 姓名 性別 號碼 住址 分組名稱。方法 自定義初始化方法 姓名 號碼 顯示聯絡人資訊 2 在main.m中定義可變陣列,管理所有聯絡人。可以新增新聯絡人物件,如果姓名或 號碼為空,列印新增失敗。3 獲取某個分組下的所有聯絡人。4 根據 號碼搜尋...
徵集 電子通訊錄功能
你認為作為乙個發展至今的科技世界,乙個較為先進和完善的電子通訊錄應該具有哪些功能呢?我把這個通訊錄定位為企業集團或者學校等團體使用,對此進行功能上的設計,以及賦予一定的功能裁剪 擴充套件,以下我列舉一些我認為應該有的功能,望能拋磚引玉 一 團體組織共用的乙個資料庫,這裡儲存的是團體內部和這個團體相關...
通訊錄的實現
ifndef contacts h define contacts h define name length 20 define length 10 define tele length 11 define addr length 30 define max 1000 struct peoplein...