怎么用python做一个电话簿,可以随时增删改查那种?

关注者
5
被浏览
5,576

5 个回答

这个问题很简单,一般是初学者练习的小程序。

做电话簿,用列表即可,列表里存储的元素还是列表,当然用字典也行,随意。

数据结构部分

用列表:

data_1 = [“张三”, 13150212586]

data_2 = [“李四”, 13052233705]

dataList = [ data_1, data_2 ]

用字典+列表:

data_1 = {“张三”: 13150212586}

data_2 = {“李四”: 13052233705}

dataList = [ data_1, data_2 ]

用字典:

data_1 = {“张三”: 13150212586}

data_2 = {“李四”: 13052233705}

dataList = {“张三”: data_1, “李四”: data_2}

当然个人的信息可以增多几项,如年龄等,自行修改

UI界面

UI部分根据自己的需求来设计,主要是功能完整

有UI,图片来源于网络


纯控制台界面,图片来源于网络

这里放两张参考照片,但我还是建议用手机联系人作参考。

至于用什么来实现UI,可以直接控制台,也可以用tkinter、EasyGUI、PyQt5等UI开发库。本人PyQt5用的最多,个人认为想开发好看、效果强大的UI可以选择这个,因为它本身是C++的Qt库移植过来的,但PyQt5的坑很多很多,会遇到各种问题,如程序打包后提示缺少某个模块;找不到platforms下的某个dll文件(其实是没有把platforms文件夹整个复制过来);又或者是在本机运行良好,但发给别人后无法运行,提示缺少某些运行时库(移植问题)等。解决这些坑,得有PyQt5打包exe很熟练才行,一般我都是用pyinstaller来打包,方便。

程序功能

最基础的增删改查,此外可以增加其他功能,如输出/显示所有的联系人信息;校验功能,检查联系人的信息是否完全一样(同一个人可不同电话,但不能完全一样),以及其他功能可自行扩展。

数据存储方式

存储的方式可以是多种的,可以用txt文件、json文件、pickle模块,这里推荐初学者用pickle模块,主要是容易理解。有开发经验的用json也很方便,相关资料这里就不赘述了,请自行百度吧。

首先明确你要做的功能。比如你可以编写一个webapp,GUI或TUI做用户界面。然后再选一个你想存储信息的方式,比如数据库,TXT等。查询就用find在列表里找,增加就使用.append方法,删除就用.remove,改就用删除+修改+增加就行。就帮到这里了,不能直接帮你写出来嘛,可能还是有点难度的。