题记:

最近因为工作需要,学习了python,瞬间对这个轻松快捷的语给吸引了,以前只知道js脚本是写网页的,没有想到python这个脚本语言的应用范围可以这么广泛,现在做一些简单或稍微复杂的操作,基本都第一时间考虑python,可以让我把大量时间放在解决问题的思路上,而不是语言本身。这个时候才体会到什么叫“life is short, you need python!”的精髓!

==========================分割线==================================

【CSV】

CSV是一种广泛使用的文件格式,所谓“CSV”,是Comma Separated Value(逗号分隔值)的英文缩写,通常都是纯文本文件。出现在档案总管中的档案类型是「逗号分格」。excel文件可以直接保存为csv文件,在计算机中,csv也可以直接用excel打开,算是一种比较方便的操纵excel文件的方式吧。

主要是python自带csv的Module,可以直接import,它的操作方式也比较简单,就是普通的文件读写

打开,读取文件:

import csv
file = csv.reader(file('my.csv','rb'))
for line in file:
    for item in line:
        print item

这里注意,如果文件是一个对象则要加入b属性,读出来的数据可以看作一个二维列表,每一行就是csv文件的一行,而每个item,就是逗号分隔的每个数据(即excel中的一个框)

写文件:

import csv
with open('eggs.csv', 'wb') as csvfile:
#写文件格式是以行为单位写,每行‘[’内字符串以‘,’分隔‘]’ 或者使用算术表达式如下
spamwriter = csv.writer(csvfile)
spamwriter.writerow(['Spam'] * 5 + ['Baked Beans'])
spamwriter.writerow(['Spam', 'Lovely Spam', 'Wonderful Spam'])
#或是多行写
lists = [['1','2'],
['3','4']]
spamwriter.writerows(lists)

【XLS】

先要装xlrd模块(读取xls):https://pypi.python.org/pypi/xlrd

安装方法,解压文件,然后在命令行下进入文件夹,使用python setup.py install

import xlrd
wb = xlrd.open_workbook('eggs.xls')
sn = wb.sheet_names() #获得工作所有表名
print 'sheet names :'+str(sn)
#wb.sheet_by_name('name') 通过工作表名进入工作表
sh = wb.sheet_by_index(0) #通过index进入工作表 sheets = wb.sheets() #获取所有工作表
for sheet in sheets:
for row in range(sheet.nrows):
for col in range(sheet.ncols):
print sheet.cell(row,col).value

安装了xlrd可以读取xls文件的内容了,如果需要写xls文件,还要安装xlwt:https://pypi.python.org/pypi/xlrd

安装方法一致

import xlwt;

wb = xlwt.Workbook()
ws = wb.add_sheet('mysheet')
ws.write(0, 0, 1.01) #把表格想象成二维表,前2各参数是行列
ws.write(0, 1, 'haha')
ws.write(1,0,'A')
ws.write(1,1,'B')
ws.write(1,2,'SUM')
ws.write(2, 0, 123)
ws.write(2, 1, 456)
ws.write(2, 2, xlwt.Formula("A3+B3"))
wb.save('example.xls')

实际结果:

不仅如此,在写入文件的时候还可以加入格式:(转自:http://www.crifan.com/export_data_to_excel_file_in_python/)

import xlwt;
from datetime import datetime; style0 = xlwt.easyxf('font: name Times New Roman, color-index red, bold on',num_format_str='#,##0.00');
style1 = xlwt.easyxf(num_format_str='D-MMM-YY'); wb = xlwt.Workbook();
ws = wb.add_sheet('A Test Sheet'); ws.write(0, 0, 1234.56, style0);
ws.write(1, 0, datetime.now(), style1);
ws.write(2, 0, 1);
ws.write(2, 1, 1);
ws.write(2, 2, xlwt.Formula("A3+B3")); wb.save('example.xls');

【python小记】python操作excel文件的更多相关文章

  1. python使用xlrd操作Excel文件

    一.xlrd读取Excel文件 用xlrd进行读取比较方便,流程和平常手动操作Excel一样,打开工作簿(Workbook),选择工作表(sheets),然后操作单元格(cell). 例子:要打开当前 ...

  2. python 操作Excel文件

    1   安装xlrd.xlwt.xlutils cmd下输入: pip install xlrd        #读取excel pip install xlwt        #写入excel pi ...

  3. python第三方库——xlrd和xlwt操作Excel文件学习

    python第三方库——xlrd和xlwt操作Excel文件学习 1安装: C:\Users\Lenovo>pip install xlwtCollecting xlwt  Downloadin ...

  4. Python【操作EXCEL文件】

    #Python中,对EXCEL文件的读写操作需要安装.导入几个第三方模块#xlrd模块:只能读取EXCEL文件,不能进行写操作#xlwt模块:只能进行写操作,但是不能是覆盖写操作(也就是修改Excel ...

  5. 用Python的pandas框架操作Excel文件中的数据教程

    用Python的pandas框架操作Excel文件中的数据教程 本文的目的,是向您展示如何使用pandas 来执行一些常见的Excel任务.有些例子比较琐碎,但我觉得展示这些简单的东西与那些你可以在其 ...

  6. 记录python接口自动化测试--把操作excel文件的方法封装起来(第五目)

    前面补充了如何来操作excel文件,这次把如何获取excel文件的sheet对象.行数.单元格数据的方法进行封装,方便后面调用 handle_excel.py# coding:utf-8 import ...

  7. Python使用openpyxl读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  8. 【转发】Python使用openpyxl读写excel文件

    Python使用openpyxl读写excel文件 这是一个第三方库,可以处理xlsx格式的Excel文件.pip install openpyxl安装.如果使用Aanconda,应该自带了. 读取E ...

  9. 转 Python - openpyxl 读写操作Excel

    Python - openpyxl 读写操作Excel   openpyxl特点   openpyxl(可读写excel表)专门处理Excel2007及以上版本产生的xlsx文件,xls和xlsx之间 ...

  10. Java生成和操作Excel文件(转载)

    Java生成和操作Excel文件   JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该A ...

随机推荐

  1. createTextRange 创建文本对象

    document.body.createTextRange 主要是用来对一些文本对象进行操作.比如你有一大段文字,都在同一个P标签内,但是你只希望通过JS改变其中的一小部分,这时就可以用createT ...

  2. Browsersync 省时浏览器同步测试工具,浏览器自动刷新,多终端同步

    官网地址 http://www.browsersync.cn/ 1.安装 BrowserSync npm install -g browser-sync 2.启动 BrowserSync // --f ...

  3. 从.NET/CLR返回的hresult:0x8013XXXX的解释

    什么是0x8013XXXX 有时您可能会遇到从.NET返回的神秘HRESULT,它以0x8013开头,例如0x80131522.不幸的是,Visual Studio附带的错误查找并不能真正处理那些奇怪 ...

  4. JavaScript高级程序编程(三)

    2017-06-24 更新 北京连续三天下雨啦 乘性操作符   1.ECMA中定义了三种操作符,乘法 除法 和求模 并与其他语言相应操作符相同,再计算之前如果不是数值,会先去调用number()方法转 ...

  5. 结构体&文件

    1.本章学习内容总结 1.1学习内容总结 什么是结构类型? 结构Structure类型是一种允许程序员把一些数据分量聚合成一个整体的数据类型. 结构和数组的区别? 结构和数组的最大区别是数组中所有元素 ...

  6. xmind 破解

    邮箱:x@iroader 序列号: XAka34A2rVRYJ4XBIU35UZMUEEF64CMMIYZCK2FZZUQNODEKUHGJLFMSLIQMQUCUBXRENLK6NZL37JXP4P ...

  7. Serlvet开发

    javaweb学习总结(五)——Servlet开发(一) 一.Servlet简介 Servlet是sun公司提供的一门用于开发动态web资源的技术. Sun公司在其API中提供了一个servlet接口 ...

  8. last-child为啥不生效

    last-child基本定义 指定属于其父元素的最后一个子元素的 p 元素的背景色 如果你这样写是不会生效的 <div class="limit-border"> &l ...

  9. linux性能监控常用命令

    概述 我们在linux下,如果想要监控服务器性能.我们必须掌握以下常用的指标查看命令. ps pstree top free vmstat sar ps ps命令能给出当前系统中进程的快照.下面我们列 ...

  10. android -------- Base64 加密解密算法

    Base64是网络上最常见的用于传输8Bit字节码的编码方式之一,Base64就是一种基于64个可打印字符来表示二进制数据的方法.可查看RFC2045-RFC2049,上面有MIME的详细规范. Ba ...