python实现通讯录管理系统_python练习(通讯管理程序)

增加联系人: 用户输入姓名、地址、电话等信息,将信息保存在一个列表中

列出联系人: 打印输出所有联系人的信息

查询联系人: 用户输入联系人姓名,打印输出该联系人的信息

修改联系人:用户查询需要修改的用户名,并对其进行修改。

删除联系人: 用户输入联系人姓名,从通讯录中删除该联系人

'''

@Author: llody

@FilePath: \web\通讯录管理程序.py

'''

persons =[{'name':'llody','address':'四川成都','phone':'1360000000'},{'name':'python','address':'四川成都','phone':'1360000000'},{'name':'go','address':'四川成都','phone':'1360000000'}]

while True:

print("1:查询联系人")

print("2:添加联系人")

print("3:列出所有联系人")

print("4:修改联系人")

print("5:删除联系人")

print("6:退出程序")

choice = input("请输入【1-6】:")

if choice =='1':

name = input('查询联系人姓名:')

for person in persons: #循环读取,将字典中数据读入内存中

if person['name'] == name: #匹配查询联系人与字典中name时候相等

print('%s,%s,%s' % (person['name'],person['address'],person['phone']))

else:

print("无姓名为:%s" % name ,"的联系人")

elif choice =='2':

name = input('姓名:')

address = input('归属地:')

phone = input('电话号码:')

person = {'name':name,'address':address,'phone':phone}

persons.append(person) #添加如字典内存中

print("已成功添加联系人")

elif choice =='3':

for person in persons:

print('%s,%s,%s' % (person['name'],person['address'],person['phone']))

elif choice =='4':

name = input("姓名") #根据name进行查询并修改

for person in persons:

if person['name'] == name:

print("请注意您即将修改名为:%s" % name ,"的联系人,请注意")

print('姓名: %s' % person['name'])

person['name'] = input('姓名:')

print('归属地: %s' % person['address'])

person['address'] = input('归属地:')

print('电话号码: %s' % person['phone'])

person['phone'] = input('电话号码:')

print("联系人信息修改成功")

break

else:

print("无此联系人")

elif choice =='5':

name = input("删除联系人:")

for person in persons:

if person['name'] == name:

persons.remove(person) #使用remove函数,删除指定列

print("联系人删除成功")

break

else:

print("无此联系人")

elif choice =='6':

print("程序已退出")

break

else:

print("输入有误,请重新输入")

用函数方式改写通讯录管理程序

'''

@Author: your name

@FilePath: \web\函数.py

'''

persons =[{'name':'llody','address':'四川成都','phone':'1360000000'},{'name':'python','address':'四川成都','phone':'1360000000'},{'name':'go','address':'四川成都','phone':'1360000000'}]

def query_person():

print("查询联系人")

name = input("姓名:")

for person in persons:

if person['name'] == name:

print('%s,%s,%s' %(person['name'],person['address'],person['phone']))

break

else:

print("无此联系人,请重新输入")

query_person()

def create_person():

print("添加联系人")

name = input("姓名:")

address = input("归属地:")

phone = input("电话号码")

person = {'name':name,'address':address,'phone':phone}

persons.append(person)

print("联系人添加成功")

main()

def list_person():

print("列出所有联系人")

for person in persons:

print('%s,%s,%s' %(person['name'],person['address'],person['phone']))

main()

def update_person():

print("修改联系人")

name = input("姓名:")

for person in persons:

if person['name'] == name:

print("请注意您即将修改名为:%s" % name ,"的联系人,请注意")

print('姓名: %s' % person['name'])

person['name'] = input('姓名:')

print('归属地: %s' % person['address'])

person['address'] = input('归属地:')

print('电话号码: %s' % person['phone'])

person['phone'] = input('电话号码:')

print("联系人信息修改成功")

main()

break

else:

print("无此联系人,请重新查询输入")

main()

def delete_person():

print("删除联系人")

name = input("姓名:")

for person in persons:

if person['name'] == name:

persons.remove(person)

print("联系人删除成功")

break

else:

print("无此联系人,请确认后输入")

data = input("1,继续输入:2,重新查询确认,请选择")

if data == '1':

delete_person()

elif data == '2':

main()

else:

print("输入错误,程序退出")

def git_person():

while True:

print("1:查询联系人")

print("2:添加联系人")

print("3:列出所有联系人")

print("4:修改联系人")

print("5:删除联系人")

print("6:退出程序")

choice = input("请输入【1-6】:")

return choice

def error_person():

print("输入有误,请重新输入")

def main():

choice = git_person()

if choice == '1':

query_person()

elif choice == '2':

create_person()

elif choice == '3':

list_person()

elif choice == '4':

update_person()

elif choice == '5':

delete_person()

elif choice == '6':

print('程序已退出')

else:

error_person()

main()

'''

@Author: llody

@用类改写通讯录管理系统

@FilePath: \web\addressbook.py

'''

class addressbook:

def __init__(self):

self.persons = [{'name':'llody','address':'四川成都','phone':'1360000000'},{'name':'python','address':'四川成都','phone':'1360000000'},{'name':'go','address':'四川成都','phone':'1360000000'}]

def create_person(self):

name = input("姓名:")

address = input("地址:")

phone = input("电话:")

person = {'name':name,'address':address,'phone':phone}

self.persons.append(person)

def list_person(self):

for person in self.persons:

print('名字:%s,地址:%s,电话:%s'%(person['name'],person['address'],person['phone']))

def query_person(self):

name = input('请输入查询联系人姓名:')

for person in self.persons:

if person['name'] == name:

print('名字:%s,地址:%s,电话:%s'%(person['name'],person['address'],person['phone']))

break

else:

print('无此联系人信息')

def update_person(self):

name = input("请输入联系人:")

for person in self.persons:

if person['name'] == name:

print("请注意,您即将修改的联系人为:%s" %name,"请注意,修改不可逆!!")

i = input("继续请输入【y/n】:")

if i == 'y':

print("姓名:%s" %person['name'])

person['name'] = input("姓名修改为:")

print("地址:%s" %person['address'])

person['address'] = input('地址修改为:')

print("电话:%s"%person['phone'])

person['phone'] = input('电话修改为:')

print("修改已完成!!!!")

break

else:

print('退出修改')

break

else:

print('通讯录无此联系人!!!')

def delete_person(self):

name = input('请输入需要删除的用户姓名:')

for person in self.persons:

if person['name'] == name:

print("请注意,您即将修改的联系人为:%s" %name,"请注意,修改不可逆!!")

i = input("继续请输入【y/n】:")

if i == 'y':

self.persons.remove(person)

print('联系人已成功删除')

break

else:

print('已退出删除程序')

break

else:

print('通讯录无此联系人,请确认后再选择!!!')

def git_person():

print("欢迎使用通讯录管理程序")

print('1:添加联系人')

print('2:列出所有联系人')

print('3:查询联系人')

print('4:修改联系人信息')

print('5:删除联系人')

print('6:退出程序')

choice = input("请输入:【1-6】")

return choice

def main_person():

add = addressbook()

while True:

choice = git_person()

if choice == '1':

add.create_person()

elif choice == '2':

add.list_person()

elif choice == '3':

add.query_person()

elif choice == '4':

add.update_person()

elif choice == '5':

add.delete_person()

elif choice == '6':

print('程序已退出')

break

else:

print("输入有误")

main_person()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值