❶ 如何用python操作excel

指定选取三列然后挑选出同时满足>=1或者同时<=-1的 将其所有数据存入新的csv表格中
程序如下:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Date : 2014-04-10 21:47:56
# @Function: 指定选取三列然后挑选出同时满足>=1或者同时<=-1的 将其所有数据存入新的csv表格中
# @Author : BeginMan

import os
import string
import xlrd
import xlwt

def get_data():
"""获取excel数据源"""
file = r'C:\Users\Administrator\Desktop\pytool\xlrd\initial_log_data.xls' # 改成自己的路径
filepath = raw_input(u'请将xls文件路径粘贴进去,如果程序里已经指定了文件则按Enter键继续:')
is_valid = False # 验证文件
try:
filepath = [file, filepath][filepath != '']
print filepath
# 判断给出的路径是不是xls格式
if os.path.isfile(filepath):
filename = os.path.basename(filepath)
if filename.split('.')[1] == 'xls':
is_valid = True
data = None
if is_valid:
data = xlrd.open_workbook(filepath)
except Exception, e:
print u'你操作错误:%s' %e
return None
return data

def handle_data():
"""处理数据"""
data = get_data()
if data:
col_format = ['B', 'C', 'D'] # 指定的列
inp = raw_input(u'请选择指定的三列,用逗号分隔,默认的是B,C,D(英文逗号,不区分大小写),如果选择默认则按Enter键继续:\n')
try:
inp = inp.split(',')
col_format = [col_format,inp][len([i for i in inp if i in string.letters]) == 3]
col_format = [i.upper() for i in col_format] # 转换成大写
table = data.sheet_by_index(0) # 选取第一个工作区
nrows = table.nrows # 行数
ncols = table.ncols # 列数
str_upcase = [i for i in string.uppercase] # 所有大写字母
i_upcase = range(len(str_upcase)) # 对应的数字
ncols_dir = dict(zip(str_upcase,i_upcase)) # 格式成字典
col_index = [ncols_dir.get(i) for i in col_format] # 获取指定列所对应的索引

# 选取的三列是否同时满足 >=1或者同时<=-1
print u'正在检索中……'
count = 0
result = []
for i in xrange(nrows):
cell_0 = table.cell(i,col_index[0]).value
cell_1 = table.cell(i,col_index[1]).value
cell_2 = table.cell(i,col_index[2]).value
if (cell_0>=1 and cell_1>=1 and cell_2>=1) or (cell_0<=-1 and cell_1<=-1 and cell_2<=-1):
result.append(table.row_values(i)) # 将符合要求的一行添加进去
count += 1
print u'该文件中共%s行,%s列,其中满足条件的共有%s条数据' %(nrows, ncols, count)
print u'正在写入数据……'
col_name = col_format[0]+col_format[1]+col_format[2]
if write_data(result, col_name):
print u'写入成功!'
except Exception, e:
print u'你操作错误:%s' %e
return None
else:
print u'操作失败'
return None

def write_data(data, name):
"""写入数据,data为符合条件的数据列表,name表示指定的哪三个列,以此命名"""
file = xlwt.Workbook()
table = file.add_sheet(name,cell_overwrite_ok=True)
l = 0 # 表示行
for line in data:
c = 0 # 表示一行下的列数
for col in line:
table.write(l,c,line[c])
c += 1
l += 1
defatul_f = r'C:\Users\Administrator\Desktop\pytool\xlrd' # 默认路径
f = raw_input(u'请选择保存文件的路径:按回车跳过:')
f_name = r'\%s.xls' % name
filepath = [defatul_f+f_name, f+f_name][f != '']
file.save(filepath)
return True

def main():
handle_data()

if __name__ == '__main__':
main()

❷ python 怎样对excle的列进行读写操作

python操作Excel读写--使用xlrd 一、安装xlrd模块 到python官网下载

❸ Python对不同的Excel文件中,相同的定义项操作

用Sheet名字区分操作,比如:

importpandasaspd

writer=pd.ExcelWriter('test.xlsx')
df1=pd.DataFrame(data={'列1':[1,2,3],'列2':[4,5,6]})
df1.to_excel(writer,'Sheet1')
df1.to_excel(writer,'Sheet2')
writer.save()
Sheet1=pd.read_excel('test.xlsx',sheet_name='Sheet1')
Sheet2=pd.read_excel('test.xlsx',sheet_name='Sheet2')
print(Sheet1)
print(Sheet2)

❹ 怎样用python,读取excel中的一列数据

用python读取excel中的一列数据步骤如下:

1、首先打开dos命令窗,安装必须的两个库,命令是:pip3 installxlrd;Pip3 install xlwt。

❺ python有哪些好用的操作excel的模块

xlrd,xlwt和xlutils是用Python处理Excel文档的库。 其中,xlrd只能读取xls,xlwt只能新建写xls(不可以修改),xlutils在xlrd和xlwt之间建立一个通道,可以实现xls的修改。

❻ 用python对excel操作,将配方罗列出来

如我下图所示,D2单元格输入公式=IFERROR(TEXT(LOOKUP(9^9,--RIGHT(MID($A1,1,FIND(D$1,$A1)-1),ROW($1:$9))),"0.00%"),"")

右拉再下拉公式即可。(公式中的单元格引用可根据你表格实际进行修改套用)

示例

❼ 请问如何用python对excel的数据进行运算处理

引入Excel表格操作模块

获取数据后就可以处理数据

❽ python 怎样对excle文件进行读写操作

分别进入到xlrd和xlwt文件中对setup.py进行安装,安装命令为setup.py install
进入python解释器,输入import xlwt,正常无报错即可
下面是我写的一个将Excle文件中的数据读取到普通文本中,和从普通文本写到Excel的一个互换程序:
[python] view plain
#encoding:utf8
import xlrd
import xlwt

class OperExcel():
#读取Excel表
def rExcel(self,inEfile,outfile):
rfile = xlrd.open_workbook(inEfile)
#创建索引顺序获取一个工作表
table = rfile.sheet_by_index(0)
#其他方式
#table = rfile.sheets()[0]
#table = rfile.sheet_by_name(u'Sheet1')

#获取整行,整列的值
table.row_values(0)
table.col_values(0)

#获取行数和列数
nrows = table.nrows - 1
ncols = table.ncols

#循环获取列表的数据
#for i in range(nrows):
# print table.row_values(i)
wfile = open(outfile,'w')
#获取第一列中的所有值
for i in range(nrows):
#table.cell(i,0).value获取某一单元格的值
wfile.write(table.cell(i,0).value.encode('utf8') + '\n')
wfile.close()

#将数据写入Excel表
def wExcel(self,infile,outEfile):
rfile = open(infile,'r')
buf = rfile.read().split('\n')
rfile.close()

w = xlwt.Workbook()
sheet = w.add_sheet('sheet1')
for i in range(len(buf)):
print buf[i]
sheet.write(i,0,buf[i].decode('utf8'))
w.save(outEfile)

if __name__ == '__main__':
t = OperExcel()
t.rExcel('test.xls','test')
t.wExcel('test','1.xls')

❾ 如何用python处理excel数据

想要更好的处理这项数据,那么你必须得用一些统计的表格来进行归纳。

❿ 如何用python读取excel文件

1.首先说明我是使用的python3.5,我的office版本是2010,首先打开dos命令窗,安装必须的两个库,命令是:

pip3 install xlrd

Pip3 install xlwt

2.准备好excel,例如我的一个工作文件,我放在D盘/网络经验/11.xlsx,只有一个页签A,内容是一些销售数据

3.打开pycharm,新建一个excel.py的文件,首先导入支持库

import xlrdimport xlwt

4.针对刚入门的新手,先介绍三个知识,第一个:获取excel的sheet名称,第二:获取excel行数与列数,第三:获取第几行第几列的具体值,这是最常用的三个知识点

5.贴出代码,具体分析:

(1)要操作excel,首先得打开excel,使用open_workbook(‘路径’)

(2)要获取行与列,使用nrows(行),ncols(列)

(3)获取具体的值,使用cell(row,col).value

workbook=xlrd.open_workbook(r'E:11.xlsx')print (workbook.sheet_names()) sheet2=workbook.sheet_by_name('A') nrows=sheet2.nrows ncols=sheet2.ncols print(nrows,ncols) cell_A=sheet2.cell(1,1).value print(cell_A)

6.要在excel里写入值,就要使用write属性,重点说明写入是用到xlwt这个支援库,思路是先新建excel,然后新建页签B,然后将一组数据写入到B,最后保存为excel.xls,这里建议保存为2003的格式,大部分电脑都能打开,特别注意保存的excel的路径是在python工作文件的目录下面,贴出代码:

stus = [['年', '月'], ['2018', '10'], ['2017', '9'], ['2016', '8']]Excel = xlwt.Workbook() # 新建excelsheet = Excel.add_sheet('B') #新建页签Brow = 0for stu in stus: col = 0 for s in stu: sheet.write(row, col, s) #开始写入 col = col + 1 row = row + 1Excel.save('Excel.xls') #保存

关于如何用python读取excel文件,环球青藤小编就和大家分享到这里了,学习是永无止境的,学习一项技能更是受益终身,所以,只要肯努力学,什么时候开始都不晚。如果您还想继续了解关于python编程的学习方法及素材等内容,可以点击本站其他文章学习。