在前面,我们设置了地址簿小程序的框架,我们还为地址簿小程序中使用的数据封装了一个ExcelOperator类,它包含了常见的Excel电子表格操作。
ExcelOperator类其实,按照正常的逻辑,这个阶层的产生是不应该摆在我们面前的。就当是国外的故事吧,用openpyxl处理Excel的知识点总结。

对于如何使用,就不要管了。在我们介绍了完整部分的功能后,它的作用就显而易见了...
这是供您查看的链接。
Python其实就是用prettytable和openpyxl库来做命令行下的通讯录。
Python通讯录,如何定义类,实现Excel表格数据的增删查操作。
今天主要来了解一下通讯录小程序的信息概况,以及单个信息检索功能的实现。
单一的信息检索功能是删除、修改和搜索的前提。在操作单个数据时,首先要找到数据。事不宜迟,我们先来看看今天要达到的效果。
今天要实现的效果回顾前面两篇文章,今天主要实现control==1和control==2两个函数。
也就是要实现两个函数,view_infos和find_person。我们可以在之前定义的函数框架中直接添加。
函数功能实现让我们逐一分析。
信息总览功能的实现
其实很简单,就是用openpyxl库打开我们的' phonenumber.xlsx ',然后用prettytable库显示我们的Excel文件。
让我们完成它。#Python知识分享#
首先,将我们上一篇文章中定义的ExcelOperator类保存为“exceloperator.py”文件,并将其存储在main.py的同一个目录中
然后,我们定义ExcelOperator类的一个实例。当然,在此之前,我们还是要导入库。
导入系统
从exceloperator导入ExcelOperator作为eor
从漂亮的桌子进口漂亮的桌子
#创建实例
eo = eor
#创建PrettyTable对象的另一个实例
pt =漂亮的表
#想要将第一行内容添加到prettytable实例中
pt . field _ names = EO . get _ row _ value
#获取最大行数和列数
row,col = eo.get_row_col_num
#遍历每一行
对于范围内的I:
Pt.add_row) #将每一行添加到Pt实例中。
#打印输出

打印
好了,就把上面的放到函数view_infos里,注意缩进。
暂时完成了个人信息检索功能的实现
从程序分析可以看出,我们首先提示用户输入被搜索人的名字。然后,在名为from Excel的列中查找该名称。如果有,它将返回信息,如果没有,它将不返回任何信息。按照这个思路写函数很容易。
#提示用户输入要查找的人的姓名
person_name = str)
#我在哪里可以找到某人的名字?我们得先有数据!
Name_list = eo.get_col_value #这里我的名字刚好是Excel表格的第二列,所以直接拿出来。
#确定是否找到?
如果姓名在姓名列表中:
#找到了
打印
# PrettyTable实例显示了这一点
pt =漂亮的表
pt . field _ names = EO . get _ row _ value
row,col = eo.get_row_col_num
result = eo.get_row_value + 1)
pt.add_row
打印)
#返回行数据及其在列表中的索引位置
返回结果,name_list.index + 1
否则:
打印
不返回
好了,功能基本实现了,不过还是仔细考虑一下是怎么实现的吧。
功能实现了真的有功能吗?
如果我们像上面那样写,完全没有必要封装ExcelOperator类。比较代码。
分析代码上面的信息概述和查找个人信息实际上是两个不同的对象实例。增加了后续信息修改的功能后,就没有办法实时显示信息了。

因此,当我们定义函数时,我们直接传入ExcelOperator对象实例,以确保我们使用的是同一个对象实例。让我们修改这两个函数。
实现代码这样既实现了功能,又保证了两者展现的是同一个对象实例。
零基础学Python京东月销量1000好评率99%无理由退换京东配送官方店¥57.9购买好了,今天就到这里。其实在这个例子中,PrettyTable用起来太繁琐了,还有一个简化空的空间让大家思考。
还有空间接下来,我们将添加、删除和更改数据。喜欢的朋友关注我,这个实践项目很有意思。
本文为作者原创,转载请注明出处,百佳诺。:Python高手修炼。


