求一个编写python程序序,用文件的方法编写一个通讯录,急!!!

  闲着没事用python写一个模拟通訊录,要求要实现常用的通讯录的功能基本流程如下

  接下来就按照这个流程实现各个模块的功能

  1. 定义一个类,并初始化

  2. 接丅来先定义一个方法实现通讯录的主界面的功能

  调用该方法,就会显示一个主界面注:整个程序都有“返回”功能,操作命令是按"q"

  用户可以选择“快速查找”(定义了一个_search()方法来实现)“添加联系人”(定义了一个_add_address()方法实现),“显示所有联系人”(定义了┅个_show()方法来实现)然后根据用户的输入如,进入下一个子页面

  下面介绍这几个方法的具体实现过程

  该方法是根据用户的输入查找到联系人之后,返回联系人信息该方法提供两种查找的方法,一种是根据备注名来查找一种是根据电话号码来查找,若找不到则提示用户未找到找到则跳转到该联系人的个人信息页

上面这个方法里面嵌套了一个方法,__person_info()参数是查找到的联系人的个人信息。这个方法的功能是展示某个联系人的个人信息页面具体实现的过程如下 def __person_info(self, info): # 个人信息页 #

  如果正确进入该页的话,将会看到下面这个界面

  然後用户可以根据提示选择你接下来的操作。根据代码可以看到从2到5,各个功能都分别定义了一个方法(函数)下面来介绍一下这几個方法的实现过程

  修改信息可以修改备注、号码、删除通话记录(因为通话记录可以是多条的,所以通话记录是一个列表删除通话記录就是将该列表变成空列表)

  删除联系人之后,该联系人的个人信息页也就没意义所以是删除成功就直接回到主页面

  注意,仩面的这些代码牵扯到通讯录信息的增、删、改的,在操作完之后都要将信息重新写入一次即模拟刷新通讯录,这个刷新通讯录的方法是updata_address()代码如下

  注,self.data 是通讯录里所有联系人的信息的一个列表刷新通讯录实际上就是当self.data被修改之后,就重新将它写进通讯录这样僦实现了更新的功能。dump()里面的参数ensure_ascii=False的作用是让输入的中文写入时就是显示中文而不是unicode编码。

(如果不想慢慢查找可以用这个方法实现顯示所有联系人)

  代码中读取文件的方式是用json模块

}

我要回帖

更多关于 编写python程序 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信