网络编程
位置:首页>> 网络编程>> Python编程>> Python编写电话薄实现增删改查功能

Python编写电话薄实现增删改查功能

作者:net小伙  发布时间:2021-07-14 21:28:18 

标签:Python,电话薄,增删改查

初学python,写一个小程序练习一下。主要功能就是增删改查的一些功能。主要用到的技术:字典的使用,pickle的使用,io文件操作。代码如下:


import pickle

#studentinfo = {'netboy': '15011038018',\
#                'godboy': '15011235698'}
studentinfo = {}

FUNC_NUM = 5

def write_file(value):
   file = open('student_info.txt', 'wb')
   file.truncate()
   pickle.dump(value, file, True)
   file.close

def read_file():
   global studentinfo
   file = open('student_info.txt', 'rb')
   studentinfo = pickle.load(file)
   file.close()

def search_student():
   global studentinfo
   name = input('please input student\'s name:')
   if name in studentinfo:
       print('name:%s phone:%s' % (name, studentinfo[name]))
   else:
       print('has no this body')

def delete_student():
   global studentinfo
   name = input('please input student\'s name:')
   if name in studentinfo:
       studentinfo.pop(name)
       write_file(studentinfo)
   else:
       print('has no this body')

def add_student():
   global studentinfo
   name = input('please input student\'s name:')
   phone = input('please input phone:')
   studentinfo[name] = phone
   write_file(studentinfo)

def modifiy_student():
   global studentinfo
   name = input('please input student\'s name:')
   if name in studentinfo:
       phone = input('please input student\'s phone:')
       studentinfo[name] = phone
   else:
       print('has no this name')

def show_all():
   global studentinfo
   for key, value in studentinfo.items():
       print('name:' + key + 'phone:' + value)

func = {1 : search_student, \
   2 : delete_student, \
   3 : add_student, \
   4 : modifiy_student, \
   5 : show_all}

def menu():
   print('-----------------------------------------------');
   print('1 search student:')
   print('2 delete student:')
   print('3 add student:')
   print('4 modifiy student:')
   print('5 show all student')
   print('6 exit')
   print('-----------------------------------------------');

def init_data():
   global studentinfo
   file = open('student_info.txt', 'rb')
   studentinfo = pickle.load(file)
   #print(studentinfo)
   file.close()

init_data()
while True:
   menu()
   index = int(input())
   if index == FUNC_NUM + 1:
       exit()
   elif index < 1 or index > FUNC_NUM + 1:
       print('num is between 1-%d' % (FUNC_NUM + 1))
       continue
   #print(index)
   func[index]()
0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com