1. python和MATLAB读取excel指定行列数据的方法
1、用xlrd读取
对应方法如下,需要先import xlrd和numpy,通过row_start和row_end控制行数,通过column_start和column_end控制列数
这里要注意python是0-based索引,excel看的时候是1-based的索引
2、用pandas下的read_excel函数
dframe = pd.read_excel(“file_name.xlsx”)
dframe = pd.read_excel(“file_name.xlsx”, sheetname=”Sheet_name”)
dframe = pd.read_excel(“file_name.xlsx”, sheetname=number)
读取表格的方式有两种:
1、xlsread
[~,MeaDef,~]=xlsread(xls_site,table_tag,'B12:AI12');
这里输出是一个对应数字,一个对应字符串,一个是用元胞把所有数据放在一起
对应的xlswrite格式:
xlswrite(xls_site_output,train,1,['A',num2str(ix+1),':M',num2str(ix+1)])
2、read_table
2. python读取excel文件,将每一行都保存为一个列表。每一行对应一个列表。
python读写excel文件要用到两个库:xlrd和xlwt,首先下载安装这两个库。
1、#读取Excel
importxlrd
data = xlrd.open_workbook(excelFile)
table = data.sheets()[0]
nrows = table.nrows #行数
ncols = table.ncols #列数
for i in xrange(0,nrows):
rowValues= table.row_values(i) #某一行数据
for item in rowValues:
printitem
2、写Excel文件
'''往EXCEl单元格写内容,每次写一行sheet:页签名称;row:行内容列表;rowIndex:行索引;
isBold:true:粗字段,false:普通字体'''
defWriteSheetRow(sheet,rowValueList,rowIndex,isBold):
i = 0
style = xlwt.easyxf('font: bold 1')
#style = xlwt.easyxf('font: bold 0, color red;')#红色字体
#style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;') # 设置Excel单元格的背景色为黄色,字体为粗体
forsvalue inrowValueList:
strValue = unicode(str(svalue),'utf-8')
ifisBold:
sheet.write(rowIndex,i,strValue,style)
else:
sheet.write(rowIndex,i,strValue)
i = i + 1
'''写excel文件'''
defsave_Excel(strFile):
excelFile = unicode(strFile,"utf8")
wbk = xlwt.Workbook()
sheet = wbk.add_sheet('sheet1',cell_overwrite_ok=True)
headList = ['标题1','标题2','标题3','标题4','总计']
rowIndex = 0
WriteSheetRow(sheet,headList,rowIndex,True)
fori inxrange(1,11):
rowIndex = rowIndex + 1
valueList = []
forj inxrange(1,5):
valueList.append(j*i)
WriteSheetRow(sheet,valueList,rowIndex,False)
wbk.save(excelFile)
style2 = xlwt.easyxf('pattern: pattern solid, fore_colour yellow; font: bold on;')
在设置上Excel单元格的背景色时,fore_colour支持的颜色是有限的,仅支持一下颜色
aqua 0x31
black 0x08
blue 0x0C
blue_gray 0x36
bright_green 0x0B
brown 0x3C
coral 0x1D
cyan_ega 0x0F
dark_blue 0x12
dark_blue_ega 0x12
dark_green 0x3A
dark_green_ega 0x11
dark_purple 0x1C
dark_red 0x10
dark_red_ega 0x10
dark_teal 0x38
dark_yellow 0x13
gold 0x33
gray_ega 0x17
gray25 0x16
gray40 0x37
gray50 0x17
gray80 0x3F
green 0x11
ice_blue 0x1F
indigo 0x3E
ivory 0x1A
lavender 0x2E
light_blue 0x30
light_green 0x2A
light_orange 0x34
light_turquoise 0x29
light_yellow 0x2B
lime 0x32
magenta_ega 0x0E
ocean_blue 0x1E
olive_ega 0x13
olive_green 0x3B
orange 0x35
pale_blue 0x2C
periwinkle 0x18
pink 0x0E
plum 0x3D
purple_ega 0x14
red 0x0A
rose 0x2D
sea_green 0x39
silver_ega 0x16
sky_blue 0x28
tan 0x2F
teal 0x15
teal_ega 0x15
turquoise 0x0F
violet 0x14
white 0x09
yellow 0x0D"""
另外一种方式是 用pyExcelerator
from pyExcelerator import *# excel 第一行数据excel_headDatas = [u'发布时间', u'文章标题', u'文章链接', u'文章简介']
articles =[
{u'发布时间':u'2017年5月9日',
u'文章标题':u'Python项目实战教程:国内就能访问的google搜索引擎',
u'
u'文章简介':u'大家可以留言、想了解python那个方向的知识、不然我也不知道'},
{u'发布时间':u'2017年5月4日',
u'文章标题':u'对于学习Django的建议、你知道的有那些',
u'文章链接':',
u'文章简介':u'随着Django1.4第二个候选版的发布,虽然还不支持Python3,但Django团队已经在着手计划中,据官方博客所说,Django1.5将会试验性的支持python3'}
]# 定义excel操作句柄excle_Workbook = Workbook()
excel_sheet_name = time.strftime('%Y-%m-%d')
excel_sheet = excle_Workbook.add_sheet(excel_sheet_name)
index = 0#标题for data in excel_headDatas:
excel_sheet.write(0, index, data)
index += 1index = 1#内容for article in articles:
colIndex = 0 for item in excel_headDatas:
excel_sheet.write(index, colIndex, article[item])
colIndex += 1
index += 1#保存test.xlsx到当前程序目录excle_Workbook.save('test.xlsx')# db = mongoDB.mongoDbBase()# db.Get_information_stat()
3. python怎样实现一行一行读取文件数据,并且要实现读取一行数据,就进行条件判断
超简单
get='''12
15
16
19
23'''
result=get.split(' ')
foriinresult:
ifint(i)>16:
print(i)
满意还请采纳
4. 怎样用python,读取excel中的一列数据
用python读取excel中的一列数据步骤如下:
1、首先打开dos命令窗,安装必须的两个库,命令是:pip3 installxlrd;Pip3 install xlwt。
5. Python如何读取csv文件某一列的每一行数据,并判断该数值是否满足条件
读取csv文件,用的是csv.reader()这个方法。返回结果是一个_csv.reader的对象,我们可以对这个对象进行遍历,输出每一行,某一行,或某一列。代码如下:
6. Python如何从文件读取数据
1.1 读取整个文件
要读取文件,需要一个包含几行文本的文件(文件PI_DESC.txt与file_reader.py在同一目录下)
PI_DESC.txt
3.1415926535
8979323846
2643383279
5028841971
file_reader.py
with open("PI_DESC.txt") as file_object:
contents = file_object.read()
print(contents)
我们可以看出,读取文件时,并没有使用colse()方法,那么未妥善的关闭文件,会不会导致文件收到损坏呢?在这里是不会的,因为我们在open()方法前边引入了关键字with,该关键字的作用是:在不需要访问文件后将其关闭
1.2文件路径
程序在读取文本文件的时候,如果不给定路径,那么它会先在当前目录下进行检索,有时候我们需要读取其他文件夹中的路径,例如:
7. python如何实现分行提取指定字符串
python读取文件内容的方法:一.最方便的方法是一次性读取文件中的所有内容并放置到一个大字符串中:all_the_text=open('thefile.txt').read()#文本文件中的所有文本all_the_data=open('abinfile','rb').read()#二进制文件中的所有数据为了安全起见,最好还是给打开的文件对象指定一个名字,这样在完成操作之后可以迅速关闭文件,防止一些无用的文件对象占用内存。举个例子,对文本文件读取:file_object=open('thefile.txt')try:all_the_text=file_object.read()finally:file_object.close()不一定要在这里用Try/finally语句,但是用了效果更好,因为它可以保证文件对象被关闭,即使在读取中发生了严重错误。二.最简单、最快,也最具Python风格的方法是逐行读取文本文件内容,并将读取的数据放置到一个字符串行表中:list_of_all_the_lines=file_object.readlines()这样读出的每行文本末尾都带有"\n"符号;如果你不想这样,还有另一个替代的办法,比如:list_of_all_the_lines=file_object.read().splitlines()list_of_all_the_lines=file_object.read().split('\n')list_of_all_the_lines=[L.rstrip('\n')forLinfile_object]
8. Python按行读取文件的简单实现方法
Python按行读取文件的简单实现方法
下面小编就为大家带来一篇Python按行读取文件的简单实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。
1:readline()
file = open("sample.txt")
while 1:
line = file.readline()
if not line:
break
pass # do something
file.close()
一行一行得从文件读数据,显然比较慢;
不过很省内存;
测试读10M的sample.txt文件,每秒大约读32000行;
2:fileinput
import fileinput
for line in fileinput.input("sample.txt"):
pass
写法简单一些,不过测试以后发现每秒只能读13000行数据,效率比上一种方法慢了两倍多;
3:readlines()
file = open("sample.txt")
while 1:
lines = file.readlines(100000)
if not lines:
break
for line in lines:
pass # do something
file.close()
用同样的数据测试,它每秒可以读96900行数据!效率是第一种方法的3倍,第二种方法的7倍!
4:文件迭代器
每次只读取和显示一行,读取大文件时应该这样:
file = open("sample.txt")
for line in file:
pass # do something
file.close()
以上就是小编为大家带来的Python按行读取文件的简单实现方法全部内容了
9. 如何用python读取文本中指定行的内容
txt文件可以用行号,用readlines读取出来的数据是一个列表,你可以使用:
f = open('', 'r')
line = f.readlines()
line_need = line[行号-1]
这样来取指定行
10. python提供了一组读取文件数据的方法,使用什么方法可以读取当前行内
可以使用 Python 的内置函数 open() 和 readline() 来读取文件的当前行内容。
举个例子:
这里的 readlines() 函数会将文件中所有行读取到一个列表中,而迭代文件对象直接返回文件中的下一行。