如何优化中国核工业第五建设公司网站的前端图表展示以提高用户体验?
摘要:前端做图表的网站,中国核工业第五建设公司网站,wordpress链接数据库,汕头网站快速优化排名文章目录 一 什么是prettytable二 prettytable的简单使用1. 添加表头2. 添加行3. 添加列4. 设置对齐方式4. 设置
前端做图表的网站,中国核工业第五建设公司网站,wordpress链接数据库,汕头网站快速优化排名文章目录 一 什么是prettytable二 prettytable的简单使用1. 添加表头2. 添加行3. 添加列4. 设置对齐方式4. 设置输出表格样式5. 自定义边框样式6. 其它功能 三 prettytable在实际中的使用 一 什么是prettytable
prettytable是Python的一个第三方工具库#xff0c;用于创建漂亮… 文章目录 一 什么是prettytable二 prettytable的简单使用1. 添加表头2. 添加行3. 添加列4. 设置对齐方式4. 设置输出表格样式5. 自定义边框样式6. 其它功能 三 prettytable在实际中的使用 一 什么是prettytable
prettytable是Python的一个第三方工具库用于创建漂亮的ASCII表格。它支持带有列标题的表格还支持颜色和自定义格式。使用prettytable可以轻松地将数据可视化为表格方便阅读和理解。 因为是第三方工具库所以要先安装安装命令如下
pip install prettytable二 prettytable的简单使用
1. 添加表头
使用field_names来添加表头传参是一个list对象
from prettytable import PrettyTable#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
print(tb) -----------------------------
| userId | name | sex | age | job |
-----------------------------
-----------------------------2. 添加行
使用add_row()方法来添加行数据传参是一个list对象
from prettytable import PrettyTable#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
#添加行数据
tb.add_row([123, 张三, 男, 25, softtest])
print(tb)3. 添加列
使用add_column()方法来添加列数据add_column()有两个参数第一个是列标题的名称类型str第二个是列对应的value类型list如下
from prettytable import PrettyTable#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
#添加行
tb.add_row([123, 张三, 男, 25, softtest])
#添加列
tb.add_column(address, [深圳])
print(tb)-------------------------------------------
| userId | name | sex | age | job | address |
-------------------------------------------
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
-------------------------------------------4. 设置对齐方式
使用align来设置对齐方式默认居中对齐其中l是向左对齐c是居中对齐r是向右对齐如下
from prettytable import PrettyTable#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
#添加行
tb.add_row([123, 张三, 男, 25, softtest])
tb.add_row([124, 李四, 男, 25, Java])
#添加列
tb.add_column(address, [深圳, 北京])
#设置对齐方式align: l,r,c
tb.align l
print(tb) -------------------------------------------
| userId | name | sex | age | job | address |
-------------------------------------------
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |
-------------------------------------------4. 设置输出表格样式
使用set_style()来控制数据表格的样式set_style()默认参数是DEFAULT如果需要更换为其它方式则需要import导入后使用如下
from prettytable import PrettyTable
from prettytable import MARKDOWN, MSWORD_FRIENDLY#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
#添加行
tb.add_row([123, 张三, 男, 25, softtest])
tb.add_row([124, 李四, 男, 25, Java])
#添加列
tb.add_column(address, [深圳, 北京])
#设置对齐方式align: l,r,c
tb.align l
#设置输出表格的样式
print(DEFAULT表格样式:)
print(tb)
tb.set_style(MSWORD_FRIENDLY)
print(MSWORD_FRIENDLY表格样式:)
print(tb)
tb.set_style(MARKDOWN)
print(MARKDOWN表格样式:)
print(tb) DEFAULT表格样式:
-------------------------------------------
| userId | name | sex | age | job | address |
-------------------------------------------
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |
-------------------------------------------
MSWORD_FRIENDLY表格样式:
| userId | name | sex | age | job | address |
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |
MARKDOWN表格样式:
| userId | name | sex | age | job | address |
|:-------|:-----|:----|:----|:---------|:--------|
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |5. 自定义边框样式
在prettyble中表格边框由三部分组成横边框竖边框和边框连接符由以下几个属性控制
table.border 控制是否显示边框默认是True
table.junction_char 控制边框连接符
table.horizontal_char 控制横边框符号
table.vertical_char 控制竖边框符号from prettytable import PrettyTable#创建Prettytable实例
tb PrettyTable()
#添加表头
tb.field_names [userId, name, sex, age, job]
#添加行
tb.add_row([123, 张三, 男, 25, softtest])
tb.add_row([124, 李四, 男, 25, Java])
#添加列
tb.add_column(address, [深圳, 北京])
#设置对齐方式align: l,r,c
tb.align l
#自定义边框样式
print(默认边框:)
print(tb)
tb.horizontal_char * #横边框
tb.vertical_char | #竖边框
tb.junction_char | #边框连接符
print(自定义边框:)
print(tb)默认边框:
-------------------------------------------
| userId | name | sex | age | job | address |
-------------------------------------------
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |
-------------------------------------------
自定义边框:
|********|******|*****|*****|**********|*********|
| userId | name | sex | age | job | address |
|********|******|*****|*****|**********|*********|
| 123 | 张三 | 男 | 25 | softtest | 深圳 |
| 124 | 李四 | 男 | 25 | Java | 北京 |
|********|******|*****|*****|**********|*********|6. 其它功能
prettytable还有很多其它功能可以参考官网或者这篇文章python用prettytable输出漂亮的表格
三 prettytable在实际中的使用
在实际的接口测试过程中我们都要对返回的接口进行数据校验包括但不限于返回状态码单个字段值。为了能够快速知道以及美化校验结果我们可以使用prettytable来进行结果校验输出如下。
返回接口
{HEAD: {xTypCod: null,xHdrLen: 203,xSysCod: null,xDskSys: null,xWkeCod: WdcTrfSetBeg,xKeyVal: null,xIsuCnl: X86,xEncCod: null,xDalCod: null,xCmmTyp: null,xOrgIsu: null,xPreIsu: null,xEntUsr: ,xUsrPwd: null,xIsuDat: 0,xIsuTim: 0,xMacCod: null,xRtnLvl: null,xRtnCod: WYZQA76,xDevNbr: null,xTlrNbr: 100025,xRqsNbr: null,xCmmRsv: null,xDocSiz: null,xItvTms: null,xMsgFlg: null,xAppRsv: null},BODY: {$ERRORMSG$: [{xErrMsg: WYZQA76锁查步骤表记录失败,批次D019860641}]}
}校验脚本
from prettytable import PrettyTable
import json
import jsonpathresponse_data
{HEAD: {xTypCod: null,xHdrLen: 203,xSysCod: null,xDskSys: null,xWkeCod: WdcTrfSetBeg,xKeyVal: null,xIsuCnl: X86,xEncCod: null,xDalCod: null,xCmmTyp: null,xOrgIsu: null,xPreIsu: null,xEntUsr: ,xUsrPwd: null,xIsuDat: 0,xIsuTim: 0,xMacCod: null,xRtnLvl: null,xRtnCod: WYZQA76,xDevNbr: null,xTlrNbr: 100025,xRqsNbr: null,xCmmRsv: null,xDocSiz: null,xItvTms: null,xMsgFlg: null,xAppRsv: null},BODY: {$ERRORMSG$: [{xErrMsg: WYZQA76锁查步骤表记录失败,批次D019860641}]}
}
def validate_data(data: dict, yqz: dict) - None::param data: 要校验的数据:param yqz: 预期值:return: Nonedata json.loads(data)tb PrettyTable()#添加表头tb.field_names [比较字段, 预期值, 实际值, 是否通过]for k, v in yqz.items():#用jsonpath查找预期值字段在返回数据resresponse_data的值res jsonpath.jsonpath(data, $.. k)[0]if v res:tb.add_row([k, v, res, Y])else:tb.add_row([k, v, res, N])print(tb)#预期值数据
yqz {xRtnCod: WYZQA76, xErrMsg: WYZQA76锁查步骤表记录失败,批次D019860641}
#结果校验
validate_data(response_data, yqz)
效果 --------------------------------------------------------------------------------------------------------
| 比较字段 | 预期值 | 实际值 | 是否通过 |
--------------------------------------------------------------------------------------------------------
| xRtnCod | WYZQA76 | WYZQA76 | Y |
| xErrMsg | WYZQA76锁查步骤表记录失败,批次D019860641 | WYZQA76锁查步骤表记录失败,批次D019860641 | Y |
--------------------------------------------------------------------------------------------------------上面做了一个简单的演示实际工作中可以结合自身需求封装成组件或者包使用效果会更佳。
