读取
read_excel函数中包含20+参数,具体请自查。pandas.read_excel参数解释
注:标准pandas数据可以认为由两部分组成:列名和数据。参数中header的值代表了列名所在行号的索引。非标准的数据可能会引起之后的数据计算出现问题,所以最好保证数据为标准数据。
示例:
import pandas as pd
df = pd.read_excel(r"测试数据.xlsx", sheet_name="Sheet1", header=0)
print(df)
将会打印出格式化的标准数据。
写入
写入有多种方法
修改单元格
读取表格数据,然后通过for循环对自己要修改的值进行计算,将其填入对应位置后写入表格(这里会出现报错SettingWithCopyWarning: A value is trying to be set on a copy of a slice from a DataFrame,是浅拷贝导致的,但我们的目的就是要修改数据,所以无视)
import pandas as pd
import response_lis
df = pd.read_excel(r"测试数据.xlsx", sheet_name="Sheet1", header=0)
print(df)
for index, i in enumerate(df.values): # 循环读取每一行的值
{计算代码块} # 伪代码
df.iloc[:, 12][index] = 值或变量 # 将读取的df,第12列的对应一行的值进行修改
df.to_excel(r"测试数据.xlsx", sheet_name="Sheet1", index=False, header=True)
修改整列或全部
比如你已经准备好了一个key值和列名能全部对应上的dict数据,整体为列表(形如[{dict1},{dict2},…,{dictn}]形式),那么就可以直接将其写入
# 伪代码
data = [{dict1},{dict2},...,{dictn}]
for i in range(0, len(data)):
# df['format_path'][i] = data[i]['format_path']
df.loc[i+1] = data[i]
df.to_excel(r"测试数据.xlsx", sheet_name="Sheet1", index=False, header=True)