如何用python在excel中提取出其中指定一列的数据,比如说要获得G2:G900的数据并在python中生成list

如何用python在excel中提取出其中指定一列的数据,比如说要获得G2:G900的数据并在python中生成list,第1张

import xlrd

data = xlrdopen_workbook('excelFilexls')

table = datasheet_by_index(0) #通过索引顺序获取,0表示第一张表

data = [tablecell(i,ord('G')-ord('A'))value for i in range(1, 90)]

#-- coding: utf8 --

import xlrd

fname = "reflectxls"

bk = xlrdopen_workbook(fname)

shxrange = range(bknsheets)

try:

    sh = bksheet_by_name("Sheet1")

except:

    print "no sheet in %s named Sheet1" % fname

#获取行数

nrows = shnrows

#获取列数

ncols = shncols

print "nrows %d, ncols %d" % (nrows,ncols)

#获取第一行第一列数据 

cell_value = shcell_value(1,1)

#print cell_value

row_list = []

#获取各行数据

for i in range(1,nrows):

    row_data = shrow_values(i)

    row_listappend(row_data)

121 新建保存工作簿(覆盖创建)

获取当前活动工作表的:

以索引值方式获取工作表:

以工作表名获取: wb['工作表名'],注意,此表达方式为切片显示,所以没有成员提示。很少用

循环工作表:很好用,一般用sheetnames

获取所有工作表名:wbsheetnames

获取指定工作表名

修改工作表名称

新建工作表时的默认工作表名:

workbookremove(工作表)

A1 表示法: 工作表['A1'] ,R1C1 表示法:工作表cell(行号,列号)

2工作表['起始行号': '结束行号']或者工作表['起始行号: 结束行号'],此方法是按行读取的数据。

3工作表['起始列号': '结束列号']或者工作表['起始列号: 结束列号'],

此方法是按列读取的数据。

4获取(按行)指定工作表所有已用数据:

list(workbookworksheets[索引值]values)

按行求和(方法 1)

按行求和(方法 )

按列统计平均值

按行获取工作表使用区域数据:worksheetrows

按列获取工作表使用区域数据:worksheetcolumns

获取工作表中最小行号:worksheetmin_row

获取工作表中最小列号:worksheetmin_column

获取工作表中最大行号:worksheetmax_row

获取工作表中最大列号:worksheetmax_column

获取单元格的行号:cellrow

获取单元格的列号:cellcolumn iter

方法获取指定区域:

1按行获取指定工作表单元格区域:worksheetiter_rows(……)

2按列获取指定工作表单元格区域:worksheetiter_cols(……)

可以通过 min_row、min_col、max_col、max_row 这几个参数进行单元格区域的控制

A1 表示法:工作表['A1']=值,R1C1 表示法:工作表cell(行号,列号,值)

在最后一行写入数据:工作表append(列表)

1102 实例应用(九九乘法表)

最后加一列写优秀

《用Python处理Excel表格》下篇来啦!

身为工作党或学生党的你,平日里肯定少不了与Excel表格打交道的机会。当你用Excel处理较多数据时,还在使用最原始的人工 *** 作吗?现在教你如何用Python处理Excel,从此处理表格再也不加班,时间缩短数十倍!

上篇我们进行了一些事前准备,目的是用Python提取Excel表中的数据。而这一篇便是在获取数据的基础上,对Excel表格的实 *** 处理。

第9行代码用来指定创建的excel的活动表的名字:

·不写第9行,默认创建sheet

·写了第9行,创建指定名字的sheet表

第9行代码,通过给单元格重新赋值,来修改单元格的值

第9行代码的另一种写法sheet['B1']value = 'age'

第10行代码,保存时如果使用原来的(第7行)名字,就直接保存;如果使用了别的名字,就会另存为一个新文件

插入有效数据

使用append()方法,在原来数据的后面,按行插入数据

·insert_rows(idx=数字编号, amount=要插入的行数),插入的行数是在idx行数的下方插入

·insert_cols(idx=数字编号, amount=要插入的列数),插入的位置是在idx列数的左侧插入

·delete_rows(idx=数字编号, amount=要删除的行数)

·delete_cols(idx=数字编号, amount=要删除的列数)

move_range(“数据区域”,rows=,cols=):正整数为向下或向右、负整数为向左或向上

举个例子:

openpyxlstylesFont(name=字体名称,size=字体大小,bold=是否加粗,italic=是否斜体,color=字体颜色)

其中,字体颜色中的color是RGB的16进制表示

再者,可以使用for循环,修改多行多列的数据,在这里介绍了获取的方法

Alignment(horizontal=水平对齐模式,vertical=垂直对齐模式,text_rotation=旋转角度,wrap_text=是否自动换行)

水平对齐:‘distributed’,‘justify’,‘center’,‘left’, ‘centerContinuous’,'right,‘general’

垂直对齐:‘bottom’,‘distributed’,‘justify’,‘center’,‘top’

当然,你仍旧可以调用for循环来实现对多行多列的 *** 作

设置行列的宽高:

·row_dimensions[行编号]height = 行高

·column_dimensions[列编号]width = 列宽

合并单元格有下面两种方法,需要注意的是,如果要合并的格子中有数据,即便python没有报错,Excel打开的时候也会报错。

merge_cells(待合并的格子编号)

merge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)

拆分单元格的方法同上

unmerge_cells(待合并的格子编号)

unmerge_cells(start_row=起始行号,start_column=起始列号,end_row=结束行号,end_column=结束列号)

create_sheet(“新的sheet名”):创建一个新的sheet表

第11行,使用title修改sheet表的名字

remove(“sheet名”):删除某个sheet表

要删除某sheet表,需要激活这个sheet表,即:将其作为活动表(关于活动表的定义请看前面文章开头写的有)下面8~11行代码展示了原始活动表与手动更换活动表,第13行代码删掉活动表

背景知识

numpy与pandas

NumPy是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库;pandas 是基于NumPy 的一种工具,该工具是为解决数据分析任务而创建的,我们需要利用Pandas进行Excel的合并

1下面的代码生成了一个5行3列的包含15个字符的嵌套列表

(注意,第4行代码:15是等于35的,如果是15对应43,或者16对应53都会报错)

(注意,第5行代码,虽然5行3列是15个数据,但是可以指定数据从1开头,到16结束)

2添加表头

使用pandas库的DataFrame来添加表头。关于打印的结果,把最左侧的一列去掉之后会发现结果很和谐,这是因为最左侧的一列代表行号。此时xx变量的类型是

xlsxwriter模块一般是和xlrd模块搭配使用的,

xlsxwriter:负责写入数据,

xlrd:负责读取数据。

1创建一个工作簿

2创建sheet表

3写入数据

import xlwt

wb = xlwtWorkbook()

ws = wbadd_sheet('Sheet')

wswrite(0, 0, '名称')

wswrite(0, 1, '信息')

with open('atxt','r') as f:

    i = 1

    for line in f:

        if i % 2 == 1:

            wswrite((i+1)//2, 0, line)

        else:

            wswrite(i//2, 1, line)

        i += 1

wbsave('examplexls')

不知道去掉那些行是按照什么规则,就都弄进来了。

需要下载安装xlwt模块

以上就是关于如何用python在excel中提取出其中指定一列的数据,比如说要获得G2:G900的数据并在python中生成list全部的内容,包括:如何用python在excel中提取出其中指定一列的数据,比如说要获得G2:G900的数据并在python中生成list、python导出excel文档、python处理excel完整版等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9459007.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-28
下一篇 2023-04-28

发表评论

登录后才能评论

评论列表(0条)

保存