博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python 读写 Excel 常用的几种方法
阅读量:4228 次
发布时间:2019-05-26

本文共 3043 字,大约阅读时间需要 10 分钟。

xlwt、xlrd 

import xlwtimport xlrd# 存入的数据为二维列表形式my_list = [    [1, 2, 3],    [2, 3, 4],    [4, 5, 6]]def excel_save(excel_name, my_list):    info_result = []    title = ["第一列", "第二列", "第三列"]    info_result.append(title)    info_result.extend(my_list)    workbook = xlwt.Workbook(encoding='utf_8_sig')    worksheet = workbook.add_sheet(excel_name, cell_overwrite_ok=True)    for i, row in enumerate(info_result):        for j, col in enumerate(row):            worksheet.write(i, j, col)    # for row in range(len(info_result)):    #     for column in range(len(info_result[row])):    #         worksheet.write(row, column, info_result[row][column])    workbook.save(excel_name)def excel_read(excel_name):    workbook = xlrd.open_workbook(excel_name)    worksheet = workbook.sheet_by_index(0)    nrows = worksheet.nrows    for nr in range(nrows):        print(worksheet.row_values(nr))    # ['第一列', '第二列', '第三列']    # [1.0, 2.0, 3.0]    # [2.0, 3.0, 4.0]    # [4.0, 5.0, 6.0]excel_save('test.xls', my_list)excel_read('test.xls')

csv 

import csvtitle = ["第一列", "第二列", "第三列"]my_list = [    title,    [1, 2, 3],    [2, 3, 4],    [4, 5, 6]]with open('test.csv', 'w', newline='', encoding='utf-8') as f:    writer = csv.writer(f)    for row in my_list:        writer.writerow(row)# 第一列   第二列	第三列# 1	       2	    3# 2	       3	    4# 4	       5	    6with open('test.csv', 'r', encoding='utf-8') as f:    reader = csv.reader(f)    for row in reader:        print(row)# ['第一列', '第二列', '第三列']# ['1', '2', '3']# ['2', '3', '4']# ['4', '5', '6']
import csvdata = [    {'age': 18, 'city': 'BeiJing'},    {'age': 30, 'city': 'ShangHai'},    {'age': 25, 'city': 'GuangZhou'},    {'age': 40, 'city': 'ShenZhen'},]with open('test.csv', 'w', newline='', encoding='utf-8') as f:    fieldnames = ['age', 'city']    writer = csv.DictWriter(f, fieldnames)    writer.writeheader()    for row in data:        writer.writerow(row)# age	city# 18	BeiJing# 30	ShangHai# 25	GuangZhou# 40	ShenZhenwith open('test.csv', 'r') as f:    reader = csv.DictReader(f)    for row in reader:        print(row)# OrderedDict([('age', '18'), ('city', 'BeiJing')])# OrderedDict([('age', '30'), ('city', 'ShangHai')])# OrderedDict([('age', '25'), ('city', 'GuangZhou')])# OrderedDict([('age', '40'), ('city', 'ShenZhen')])

pandas 

import pandas as pddata = {    "age": [18, 30, 25, 40],    "city": ["BeiJing", "ShangHai", "GuangZhou", "ShenZhen"]}index = pd.Index(data=["Tom", "Bob", "Mary", "James"], name="name")user_info = pd.DataFrame(data=data, index=index)user_info.to_excel('test.xls')# name	age	city# Tom	18	BeiJing# Bob	30	ShangHai# Mary	25	GuangZhou# James	40	ShenZhenprint(pd.read_excel('test.xls'))#     name  age       city# 0    Tom   18    BeiJing# 1    Bob   30   ShangHai# 2   Mary   25  GuangZhou# 3  James   40   ShenZhen# 设定 index=False 以后,索引就不会再写到 excel 里边了。user_info.to_excel('test.xls', index=False)# age	city# 18	BeiJing# 30	ShangHai# 25	GuangZhou# 40	ShenZhenprint(pd.read_excel('test.xls'))#    age       city# 0   18    BeiJing# 1   30   ShangHai# 2   25  GuangZhou

 

转载地址:http://cijqi.baihongyu.com/

你可能感兴趣的文章
【转载】嵌入式系统 Boot Loader 技术内幕
查看>>
【转载】uboot学习笔记
查看>>
分布式消息中间件(rabbitMQ篇)
查看>>
JAVA程序员养成计划之JVM学习笔记(2)-垃圾收集管理
查看>>
JAVA程序员养成计划之JVM学习笔记(3)-JVM性能监控
查看>>
POJ 3580
查看>>
POJ 2482
查看>>
POJ 3363
查看>>
[LeetCode] 849. Maximize Distance to Closest Person @ python
查看>>
axi总线介绍
查看>>
Linux内核中ioremap映射的透彻理解
查看>>
ffs的另外一种实现方法
查看>>
strtol的用法
查看>>
工作队列的使用
查看>>
让vim显示空格,及tab字符 vim 多行注释
查看>>
利用mmc_test.c研究mmc模块
查看>>
tasklet、wait_queue、completion、work_queue用法总结
查看>>
int (*func(int)) (int *,int)
查看>>
在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel
查看>>
Linux内核同步机制API函数:宏:spin_lock_init ( )
查看>>