导航:首页 > 编程语言 > python写xls文件

python写xls文件

发布时间:2022-06-23 10:25:41

python 处理xls文件,读取创建者,最后一次修改者的文件属性信息,应该如何操作

Python由荷兰数学和计算机科学研究学会的Guido van Rossum 于1990 年代初设计,作为一门叫做ABC语言的替代品。Python提供了高效的高级数据结构,还能简单有效地面向对象编程

⑵ python 同时读写一个xls文件应该使用什么模块xlrd和xlwt可以吗,感觉它们只能单独工作,或者读或者写

你的感觉很对!必须2个一起用!

⑶ 如何通过Python实现Excel文件读写

参考代码如下:
# -*- coding: utf-8 -*-
import xdrlib ,sys
import xlrd
def open_excel(file= 'file.xls'):
try:
data = xlrd.open_workbook(file)
return data
except Exception,e:
print str(e)
#根据索引获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_index:表的索引
def excel_table_byindex(file= 'file.xls',colnameindex=0,by_index=0):
data = open_excel(file)
table = data.sheets()[by_index]
nrows = table.nrows #行数
ncols = table.ncols #列数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):

row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list

#根据名称获取Excel表格中的数据 参数:file:Excel文件路径 colnameindex:表头列名所在行的所以 ,by_name:Sheet1名称
def excel_table_byname(file= 'file.xls',colnameindex=0,by_name=u'Sheet1'):
data = open_excel(file)
table = data.sheet_by_name(by_name)
nrows = table.nrows #行数
colnames = table.row_values(colnameindex) #某一行数据
list =[]
for rownum in range(1,nrows):
row = table.row_values(rownum)
if row:
app = {}
for i in range(len(colnames)):
app[colnames[i]] = row[i]
list.append(app)
return list

def main():
tables = excel_table_byindex()
for row in tables:
print row

tables = excel_table_byname()
for row in tables:
print row

if __name__=="__main__":
main()

⑷ python如何处理 xls文件

python处理xls文件的包/模块很多,如xlrd、xlwt、openpyxl,以及pandas等,具体操作方法查看相关文档就可以。由于处理方式具有针对性,所以一看就能明白,其操作如:打开文件,打开哪一sheet,选取哪一行、列、单元格等。

⑸ 如何用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中的参数写入excel中

import xlwt
f = xlwt.Workbook() #创建工作薄
sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheet
list = [1,2,3,4,5]
j = 0
for i in list:
sheet1.write(j,0,i) #循环版写入 竖着写
j=j+1
f.save('text.xls')#保存权文件

⑺ Python中的文件读写-理论知识

Python处理两种不同类型的文件:二进制文件和文本文件。了解两者之间的差异很重要,因为它们的处理方式不同。

二进制文件

在正常计算机使用期间使用的大多数文件实际上是二进制文件,而不是文本。比如:Microsoft Word .doc文件实际上是一个二进制文件,即使它只有文本。

二进制文件的其他示例包括:

图像文件,包括.jpg,.png,.bmp,.gif,等。

数据库文件包括.mdb,.frm和.sqlite

文件,包括.doc,.xls,.pdf或者其他文件。

那是因为这些文件都有特殊处理的要求,需要特定类型的软件来打开它。例如,您需要Excel来打开.xls文件,并使用数据库程序来打开.sqlite文件。

文本文件

一方面,没有特定的编码,可以通过没有任何特殊处理的标准文本编辑器打开。但是,每个文本文件都必须遵守一组规则:

文本文件必须是可读的。他们可以(并且经常会)包含许多特殊编码,尤其是在HTML或其他标记语言中,但您仍然可以说出它的含义

文本文件中的数据按行组织。在大多数情况下,每一行都是一个独特的元素,无论是指令行还是命令

此外,文本文件在每行的末尾都有一个看不见的字符,这使文本编辑器知道应该有一个新行。通过编程与这些文件交互时,您可以利用该字符。在Python中,它用“ n” 表示。

在哪里可以找到Python的文件I / O工具

在Python中工作时,您不必担心导入任何特定的外部库来处理文件。Python附带有“文件库”,文件I / O工具和实用程序是核心语言的内置部分。

但是在其他语言(如C ++)中,要处理文件,您必须通过包含正确的头文件来启用文件I / O工具#include <fstream>。如果您使用java编写代码,则需要使用该import java.io.*语句。

使用Python,就没有必要这样做,这是因为Python有一组内置函数,可以处理读取和写入文件所需的所有内容。

⑻ python批处理excel文件

python代码,都没缩进,没法看。

关于xlrd,可以参考我写的:
【整理】Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
【记录】Python中安装可以读写excel的xls文件的xlutils模块(需依赖于xlrd和xlwt)
【记录】Python中安装xlrd模块

⑼ python怎么把数据写入到excel

Python中一般使用xlrd(excel read)来读取Excel文件,使用xlwt(excel write)来生成Excel文件(可以控制Excel中单元格的格式),需要注意的是,用xlrd读取excel是不能对其进行操作的:xlrd.open_workbook()方法返回xlrd.Book类型,是只读的,不能对其进行操作。而xlwt.Workbook()返回的xlwt.Workbook类型的save(filepath)方法可以保存excel文件。

因此对于读取和生成Excel文件都非常容易处理,但是对于已经存在的Excel文件进行修改就比较麻烦了。不过,还有一个xlutils(依赖于xlrd和xlwt)提供复制excel文件内容和修改文件的功能。其实际也只是在xlrd.Book和xlwt.Workbook之间建立了一个管道而已。

xlutils.模块的()方法实现了这个功能,示例代码如下:

⑽ python往xls写数据的问题

问题:
xlwt创建一个新的excel文件,然后添加sheet,写入数据;我需要向已经有数据的excel文件中追加数据;
解决办法:
再网络上找到一个思路:
1:打开已经存在的.xls文件
2:一份已经存在.xls的文件
3:向文件中写入数据
4:删除之前的文件
5:保存一份相同的文件
文件内容大致如下,提示不存在

原理还需要安装一个包:xlutils;
下载xlutils,安装,修改py;文件内容如下:

执行成功;确认excel文件内容确实被修改:

总结:
往已经存在的xls文件中,写入新的行,新的数据,对应的逻辑为:
1:用xlrd.open_workbook打开已有的xsl文件
2:然后用,from xlutils. import ;,之后的去从打开的xlrd的Book变量中,拷贝出一份,成为新的xlwt的Workbook变量
3:然后对于xlwt的Workbook变量,就是正常的:
通过get_sheet去获得对应的sheet
拿到sheet变量后,就可以往sheet中写入新的数据
4:写完新数据后,最终save保存

阅读全文

与python写xls文件相关的资料

热点内容
指数函数和对数函数的高精度快速算法 浏览:205
c预编译干什么 浏览:22
hp网络共享文件夹 浏览:363
程序员如何不被废 浏览:806
二进制流转pdf 浏览:916
php判断爬虫 浏览:571
960除24除4简便算法 浏览:786
关于解压英语翻译 浏览:565
python控制键盘右键 浏览:921
php没有libmysqldll 浏览:828
时政新闻app哪个好 浏览:906
手机已加密怎么办 浏览:201
安卓手机截屏怎么传到苹果 浏览:529
京管家app哪里下载 浏览:33
文件夹横向排列的竖向排列 浏览:453
51单片机驱动摄像头模块 浏览:689
政府文件加密没法转换 浏览:373
android判断栈顶 浏览:331
凭证软件源码 浏览:860
androidwebview滚动事件 浏览:11