用pandas新建excel并设置表头

用pandas新建excel并设置表头

import pandas

#创建一个名字为excel_file_name的excel文件
#这里把表头设置为(姓名name,年龄age,性别gender,城市city,技能skill)   
def create_form(excel_file_name):
    form_header = ['姓名name', '年龄age', '性别gender', '城市city', '技能skill']
    df = pandas.DataFrame(columns=form_header)
    df.to_excel(excel_file_name, index=False) 

    
#这里把信息插入到excel里面    
def add_info_to_form(excel_file_name, name, age, gender, city, skill):
    df = pandas.read_excel(excel_file_name)
    row_index = len(df) + 1  #当前excel内容有几行
    df.loc[row_index] = [name, age, gender, city, skill]
    df.to_excel(excel_file_name, index=False)


if __name__ == "__main__":
    excel_file_name = 'test.xls'
    create_form(excel_file_name)
    add_info_to_form(excel_file_name, '张瑞', 27, '女', '杭州', '吃')
    add_info_to_form(excel_file_name, '张瑞', 27, '女', '杭州', '吃')

用pandas查询excel

*使用python处理excel的内容时,第一步当然是读取excel的内容。**


import  pandas  as pd
#1:读取指定行
print("----读取指定的单行,数据会存在列表里面----")
df=pd.read_excel('测试.xlsx')#这个会直接默认读取到这个Excel的第一个表单
data=df.loc[0].values#0表示第一行 这里读取数据并不包含表头,要注意哦!
print("读取指定行的数据:\n{0}".format(data))
 
print("\n------读取指定的多行,数据会存在嵌套的列表里面----------")
df=pd.read_excel('测试.xlsx')
data=df.loc[[1,2]].values#读取指定多行的话,就要在loc[]里面嵌套列表指定行数
print("读取指定行的数据:\n{0}".format(data))
 
print("\n----------------读取指定的行列-----------------------")
df=pd.read_excel('测试.xlsx')
data=df.iloc[1,2]#读取第一行第二列的值,这里不需要嵌套列表
print("读取指定行的数据:\n{0}".format(data))
 
print("\n----------------读取指定的多行多列值-----------------------")
df=pd.read_excel('测试.xlsx')
data=df.loc[[1,2],['title','data']].values#读取第一行第二行的title以及data列的值,这里需要嵌套列表
print("读取指定行的数据:\n{0}".format(data))
 
print("\n-----------获取所有行的指定列----------------------------")
df=pd.read_excel('测试.xlsx')
data=df.loc[:,['title','data']].values#读所有行的title以及data列的值,这里需要嵌套列表
print("读取指定行的数据:\n{0}".format(data))
 
print("\n------------获取行号并打印输出---------------------------")
df=pd.read_excel('测试.xlsx')
print("输出行号列表",df.index.values)
 
print("\n-------------获取列名并打印输出--------------------------")
df=pd.read_excel('测试.xlsx')
print("输出列标题",df.columns.values)
 
print("\n------------获取指定行数的值---------------------------")
df=pd.read_excel('测试.xlsx')
 
print("输出值",df.sample(3).values)#这个方法类似于head()方法以及df.values方法
print("\n-----------获取指定列的值----------------------------")
df=pd.read_excel('测试.xlsx')
print("输出值\n",df['data'].values)
 

Last updated