一:了解Python
1、什么是Python?
Python是一种高级编程语言,创建它的初衷是为了简化代码编写,使开发者能够更高效地编写软件代码。Python是一门功能强大的语言,被广泛应用于网络编程、数据分析、人工智能等领域。
Python可以用来进行多种编程任务,包括但不限于:
- Web应用开发
- 爬虫开发
- 数据分析和可视化
- 人工智能和机器学习
- 游戏开发
- 自动化任务
2、Python的安装使用
官网下载安装python后,需要配置两个环境变量
D:\xxx\python
D:\xxx\python\Scripts
3、第三方库安装使用
pip install pandas
二:如何在vscode中调试python?
1、首先电脑本地安装python。
2、VScode安装 Python 插件(Visual Studio Code Marketplace 中搜索 python) 。
3、安装好之后,选择对应的 python 解释器版本,然后打开 Python 的代码文件,文件右上方的调试按钮即可开始调试。
调试过程中可以设置断点、逐步执行等。
三:Pandas
Pandas 是 Python 语言的一个扩展程序库,主要用于对Excel数据进行处理和分析
1、groupby操作
类似关系型数据库的group分组操作
merged_sum = merged_df.groupby(['供应商', '规格型号'])['数量'].sum().reset_index()
注意点,分组操作后的结果中,只有操作的那些字段。如上语句查到的数据中只有供应商、规格型号、数量3个字段
2、merge操作
类似关系型数据库的join连接操作,比如两个表有各自的字段,merge可以得到一个有两个表中所有字段的新表。
当然如上只是其中一个功能,merge还细分为外连接、左连接、右链接等诸多用法。
# 合并发票和验收表的数量统计,并填充缺失值为 0
pd.merge(invoice_sum, merged_sum, on=['销方名称', '规格型号'], how='outer').fillna(0)
3、pandas删除索引列
output_file_name = f'D:\\x.xlsx'
column_names = ["x"]
df = pd.DataFrame(columns=column_names)
with pd.ExcelWriter(output_file_name, engine='openpyxl') as writer:
df.to_excel(writer, sheet_name='结果',index=False) // 关键在这false
4、让序列列从1开始
merged = merged.reset_index(drop=True)
merged.index += 1
5、concat
concat也是合并数据,我理解跟merge的不同为,它适用于合并两个表头完全一样的表格。将第一个表格的数据,追加在第二个表格现有的数据下面。
四:Openpyxl
Openpyxl则更专注于Excel文件的读写和操作。通过Openpyxl,可以读取Excel文件的内容,对单元格进行读取和写入操作,创建、删除和重命名工作表,设置单元格的样式和格式等。具体场景案例详见 银商学习笔记文档
五:Xpath
浏览器调试工具测试Xpath是否正确
$x("//div[@class='x']")
六:报错汇总
1、pd.ExcelFile()报错zipfile.BadZipFile: File is not a zip file
文件可能是python下载的,会导致读不出来
2、文件编辑过后才能读到数据?
readExcel()有时会遇到这种情况,需要管理员身法运行python
七:语法
1、对象获取属性值
这块的语法跟js一样,如果一般属性直接用 . 获取就行,如果键是个汉字,用[]获取
// 一般属性
obj.name
// 键是汉字
obj['姓名']
// 往下取两级
obj[('name', 'sex')]