用python来自动生成excel数据文件。python处理excel文件主要是第三方模块库xlrd、xlwt、xluntils和pyExcelerator,除此之外,python处理excel还可以用win32com和openpyxl模块。

方法一:

小罗问我怎么从excel中读取数据,然后我百了一番,做下记录

excel数据图(小罗说数据要给客户保密,我随手写了几行数据):

python读取excel文件代码:#!/usr/bin/env python

# -*- coding: utf-8 -*-

# 读取excel数据

# 小罗的需求,取第二行以下的数据,然后取每行前13列的数据

import xlrd

data = xlrd.open_workbook('test.xls') # 打开xls文件

table = data.sheets()[0] # 打开第一张表

nrows = table.nrows # 获取表的行数

for i in range(nrows): # 循环逐行打印

if i == 0: # 跳过第一行

continue

print table.row_values(i)[:13] # 取前十三列

excel的写操作等后面用到的时候在做记录

方法二:

使用xlrd读取文件,使用xlwt生成Excel文件(可以控制Excel中单元格的格式)。但是用xlrd读取excel是不能对其进行操作的;而xlwt生成excel文件是不能在已有的excel文件基础上进行修改的,如需要修改文件就要使用xluntils模块。pyExcelerator模块与xlwt类似,也可以用来生成excel文件。

1. [代码]test_xlrd.py#coding=utf-8

#######################################################

#filename:test_xlrd.py

#author:defias

#date:xxxx-xx-xx

#function:读excel文件中的数据

#######################################################

import xlrd

#打开一个workbook

workbook = xlrd.open_workbook('E:\\Code\\Python\\testdata.xls')

#抓取所有sheet页的名称

worksheets = workbook.sheet_names()

print('worksheets is %s' %worksheets)

#定位到sheet1

worksheet1 = workbook.sheet_by_name(u'Sheet1')

"""

#通过索引顺序获取

worksheet1 = workbook.sheets()[0]

#或

worksheet1 = workbook.sheet_by_index(0)

"""

"""

#遍历所有sheet对象

for worksheet_name in worksheets:

worksheet = workbook.sheet_by_name(worksheet_name)

"""

#遍历sheet1中所有行row

num_rows = worksheet1.nrows

for curr_row in range(num_rows):

row = worksheet1.row_values(curr_row)

print('row%s is %s' %(curr_row,row))

#遍历sheet1中所有列col

num_cols = worksheet1.ncols

for curr_col in range(num_cols):

col = worksheet1.col_values(curr_col)

print('col%s is %s' %(curr_col,col))

#遍历sheet1中所有单元格cell

for rown in range(num_rows):

for coln in range(num_cols):

cell = worksheet1.cell_value(rown,coln)

print cell

"""

#其他写法:

cell = worksheet1.cell(rown,coln).value

print cell

#或

cell = worksheet1.row(rown)[coln].value

print cell

#或

cell = worksheet1.col(coln)[rown].value

print cell

#获取单元格中值的类型,类型 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error

cell_type = worksheet1.cell_type(rown,coln)

print cell_type

"""

2. [代码]test_xlwt.py#coding=utf-8

#######################################################

#filename:test_xlwt.py

#author:defias

#date:xxxx-xx-xx

#function:新建excel文件并写入数据

#######################################################

import xlwt

#创建workbook和sheet对象

workbook = xlwt.Workbook() #注意Workbook的开头W要大写

sheet1 = workbook.add_sheet('sheet1',cell_overwrite_ok=True)

sheet2 = workbook.add_sheet('sheet2',cell_overwrite_ok=True)

#向sheet页中写入数据

sheet1.write(0,0,'this should overwrite1')

sheet1.write(0,1,'aaaaaaaaaaaa')

sheet2.write(0,0,'this should overwrite2')

sheet2.write(1,2,'bbbbbbbbbbbbb')

"""

#-----------使用样式-----------------------------------

#初始化样式

style = xlwt.XFStyle()

#为样式创建字体

font = xlwt.Font()

font.name = 'Times New Roman'

font.bold = True

#设置样式的字体

style.font = font

#使用样式

sheet.write(0,1,'some bold Times text',style)

"""

#保存该excel文件,有同名文件时直接覆盖

workbook.save('E:\\Code\\Python\\test2.xls')

print '创建excel文件完成!'

3. [代码]test_xlutils.py#coding=utf-8

#######################################################

#filename:test_xlutils.py

#author:defias

#date:xxxx-xx-xx

#function:向excel文件中写入数据

#######################################################

import xlrd

import xlutils.copy

#打开一个workbook

rb = xlrd.open_workbook('E:\\Code\\Python\\test1.xls')

wb = xlutils.copy.copy(rb)

#获取sheet对象,通过sheet_by_index()获取的sheet对象没有write()方法

ws = wb.get_sheet(0)

#写入数据

ws.write(1, 1, 'changed!')

#添加sheet页

wb.add_sheet('sheetnnn2',cell_overwrite_ok=True)

#利用保存时同名覆盖达到修改excel文件的目的,注意未被修改的内容保持不变

wb.save('E:\\Code\\Python\\test1.xls')

4. [代码]test_pyExcelerator_read.py#coding=utf-8

#######################################################

#filename:test_pyExcelerator_read.py

#author:defias

#date:xxxx-xx-xx

#function:读excel文件中的数据

#######################################################

import pyExcelerator

#parse_xls返回一个列表,每项都是一个sheet页的数据。

#每项是一个二元组(表名,单元格数据)。其中单元格数据为一个字典,键值就是单元格的索引(i,j)。如果某个单元格无数据,那么就不存在这个值

sheets = pyExcelerator.parse_xls('E:\\Code\\Python\\testdata.xls')

print sheets

5. [代码]test_pyExcelerator.py#coding=utf-8

#######################################################

#filename:test_pyExcelerator.py

#author:defias

#date:xxxx-xx-xx

#function:新建excel文件并写入数据

#######################################################

import pyExcelerator

#创建workbook和sheet对象

wb = pyExcelerator.Workbook()

ws = wb.add_sheet(u'第一页')

#设置样式

myfont = pyExcelerator.Font()

myfont.name = u'Times New Roman'

myfont.bold = True

mystyle = pyExcelerator.XFStyle()

mystyle.font = myfont

#写入数据,使用样式

ws.write(0,0,u'ni hao 帕索!',mystyle)

#保存该excel文件,有同名文件时直接覆盖

wb.save('E:\\Code\\Python\\mini.xls')

print '创建excel文件完成!'

python高手之路_python高手之路python处理ex相关推荐

  1. python编写restful接口_Python开发之路系列:RESTful 接口开发

    这篇文章我们来看看在Flask里是如何进行RESTful接口开发的 按照我个人的理解,RESTful的核心价值再与它的规范性. RESTful接口是面向资源的, 而不是面向动作. 比如一个查书的接口, ...

  2. python提取数据段_python提取数据段 python数据分析

    如何在python中用slice分段取数据? 执行以下操作:&gt&gt a=range(6)&gt&gt a[0, 1, 2, 3, 4,5]&gt& ...

  3. python捕获信号退出_Python捕获信号退出Python中的捕获Ctrl+C/SIGINT,优雅地退出多个进程,python,在,CtrlCSIGINT,并...

    用multiprocessing.Pool处理Ctrl+C/SIGINT的正确方法是:在创建进程Pool之前,使进程忽略SIGINT.这样创建的子进程继承SIGINT处理程序. 创建Pool之后,还原 ...

  4. python怎么输出图片_python输出彩色图片python 时间处理

    在实际中遇到一个时间处理问题,需要将 Sep 06, 2014 19:30 (UTC 时间) 和 当前时间比较早晚,知道 此 2014-09-06 19:30 格式时间的运算.因此,在处理时,就想 w ...

  5. python字符串代码对象_Python源码剖析 - Python中的字符串对象

    1. 前言 我们已经在 [Python中的整数对象] 章节中对定长对象进行了详细的讲解,接下来我们将介绍变长对象,而字符串类型,则是这类对象的典型代表. 这里必须先引入一个概念: Python 中的变 ...

  6. python手机编译器推荐_Python编译器最新版|Python编译器手机版下载 v1.2 安卓版 - 数码资源网...

    现在互联网发展迅速发展,很多人开始往it行业发展,我给你们推荐一款很好的软件,Python编译器手机版主要为Python初学者提供直接运行的功能,能够随手验证一些小程序,Python编译器app支持直 ...

  7. python 去掉双引号_python知识学习,python标识符和关键字

    python标识符和关键字 标识符和关键字都是之中具有某种意义的标记和称谓,就像人的外号一样.所谓的标识符就是代码的分号.单引号.双引号等等就是标识符,而代码中的if.for等等就是关键字. pyth ...

  8. python的pass语句_Python pass语句–通过Python

    python的pass语句 Dear learners, how is everything going? Hope that you're learning well. In our previou ...

  9. python自动化办公设置_python自动化办公之 python操作Excel

    今天就为大家介绍一下,使用 Python 如何操作 Excel . 常用工具 数据处理是 Python 的一大应用场景,而 Excel 又是当前最流行的数据处理软件.因此用 Python 进行数据处理 ...

最新文章

  1. R语言ggplot2可视化分面图(faceting)、可视化分面条形图(facet_wrap bar plot)、使用strip.text函数自定义分面图每个分面标题条带strip的大小(cutomi
  2. 【android-tips】关于android应用R文件无法读取
  3. 边缘计算大热 AI芯片站上风口
  4. python累积和_python – 如何维持累积总和?
  5. jQuery相关方法6----三大系列属性
  6. 20170825 - Q - 集合框架 、 集合操作 —— 线性表
  7. Netty(二)——TCP粘包/拆包
  8. css a标签去掉下划线_CSS -- 三大特性
  9. HFS远程命令执行漏洞复现
  10. python解析html的库_python自带的用于解析HTML的库HtmlParser
  11. linux 日志 转存,如何记录linux终端下的操作日志(转)
  12. 大学计算机基础数据库知识点,大学计算机基础试题(数据库)
  13. 数据结构与算法(Python)第四天
  14. 约瑟夫环问题:猴子选大王
  15. 不到30行JS代码实现的Excel表格
  16. 倒车雷达c语言编程,汽车倒车雷达系统的设计与实现(论文c1)
  17. android studio 升级最新版本后lombok 插件提示版本太旧
  18. 【UE4】给制作的小地图加上方向指针
  19. Fibonacci数列通项公式推导
  20. Milking Cows【转帖】

热门文章

  1. 【2016-05-09】程序员的日常:咖啡
  2. 基于SSH的校园二手物品交易系统
  3. 从零开始制作游戏辅助
  4. ldpc译码讲解_LDPC码及其译码实现
  5. GDUT 2.25 D
  6. 使用HTML5和CSS制作抖音动态首页
  7. 洗牌前夜:中国云主机市场全景观察
  8. 三相PWM整流器预测直接功率控制
  9. 无线软AP简介【转载】
  10. 二层交换机vlan单臂路由的配置