python读取文件指定行
1. python读取文本内每行指定内容
可以参考下面的代码:
f=file(yourpath)
for line in f:
t = line.split("==")
part_1 = t[0] + "=="
(part_2,part_3) = t[1].split("--")
del t
print "第一段:%s 第二段:%s 第三段:%s" %(part_1,part_2,part_3)
(1)python读取文件指定行扩展阅读:
python参考函数
callable(obj) 查看一个obj是不是可以像函数一样调用
repr(obj) 得到obj的表示字符串,可以利用这个字符串eval重建该对象的一个拷贝
eval_r(str) 表示合法的python表达式,返回这个表达式
hasattr(obj,name) 查看一个obj的name space中是否有name
setattr(obj,name,value) 为一个obj的name space中的一个name指向vale这个object
2. 用python读取文本文件,对读出的每一行进行操作,这个怎么写
用python读取文本文件,对读出的每一行进行操作,写法如下:
f=open("test.txt","r")
whileTrue:
line=f.readline()
ifline:
pass#dosomethinghere
line=line.strip()
p=line.rfind('.')
filename=line[0:p]
print"create%s"%line
else:
break
f.close()
3. 怎么用python读取txt文件里指定行的内容,并导入excel
def eachlineof(filename):
''' 逐行读取给定的文本文件,返回行号、剔除末尾空字符的行内容 '''
with open(filename) as handle:
for lno, line in enumerate(handle):
yield lno+1, line.strip()
另外: 读写excel需要第三方类库,可以考虑下载安装xlrd, xlwt
写excel表
写excel表要用到xlwt模块,官网下载(http://pypi.python.org/pypi/xlwt)。大致使用流程如下:
1、导入模块
复制代码代码如下:
import xlwt
2、创建workbook(其实就是excel,后来保存一下就行)
复制代码代码如下:
workbook = xlwt.Workbook(encoding = 'ascii')
3、创建表
复制代码代码如下:
worksheet = workbook.add_sheet('My Worksheet')
4、往单元格内写入内容
复制代码代码如下:
worksheet.write(0, 0, label = 'Row 0, Column 0 Value')
5、保存
复制代码代码如下:
workbook.save('Excel_Workbook.xls')
由于我的需求比较简单,所以这上面没遇到什么问题,唯一的就是建议还是用ascii编码,不然可能会有一些诡异的现象。
当然xlwt功能远远不止这些,他甚至可以设置各种样式之类的。附上一点例子
复制代码代码如下:
Examples Generating Excel Documents Using Python's xlwt
Here are some simple examples using Python's xlwt library to dynamically generate Excel documents.
Please note a useful alternative may be ezodf, which allows you to generate ODS (Open Document Spreadsheet) files for LibreOffi
4. 如何用python读取文本中指定行的内容
这里写个简单的,用readline即可实现,命令行带入参数1为读取的文件名,参数2为需要读取的行数。需要读取多行,你可以简单改改,例如参数带个列表,程序内用eval转化为数组之类的方法。
importsys
filename=sys.argv[1]
linenum=int(sys.argv[2])
withopen(filename,'r')asf:
line=f.readline()
n=1
whileline:
iflinenum==n:
printline
break
else:
line=f.readline()
n+=1
5. 怎么用python读取txt文件里指定行的内容,并导入excel
举个简单的例子,我这里有一个txt文件,文件中每一个row包含的是用户名和用户的身高,我们这里需要获取特定的行内容,比如身高大于170cm的内容,写入excel中。
data.txt
张三172cm
李四183cm
王五166cm
赵六159cm
孙乐乐185cm
周熊熊169cm
苏鹏鹏176cm
吴刚刚191cm
韩轩轩172cm
sheet.py
'''
获取文件信息
'''
fi=open("data.txt")
lines=fi.readlines()
#读取身高大于170cm
data=[]
forhumaninlines:
hinfo=human.split()
ifhinfo:
ifint(hinfo[1][:3])>=170:
data.append(tuple(hinfo))
'''
写入excel
'''
importxlwt
#创建workbook和sheet对象
workbook=xlwt.Workbook()#Workbook的开头W大写
sheet1=workbook.add_sheet('sheet1',cell_overwrite_ok=True)
#向sheet页中写入数据
sheet1.write(0,0,'姓名')
sheet1.write(0,1,'身高cm')
row=1
foriindata:
sheet1.write(row,0,i[0])#i0姓名
sheet1.write(row,1,i[1])#i1身高
row+=1
workbook.save('c.xlsx')#写入excel
执行sheet.py 后,打开同级目录下的c.xlsx
6. python读取csv文件的某一行
1.全部读到成列表然后选取行(容易超时,乱码等问题)
2.利用迭代工具,代码如下:
from itertools import islice
with open('data.tsv', 'r') as f:
for line in islice(f, 1, None):
# process data
f.close()
修改islice函数中第2个参数n即可,表示读到f文件对象的第n行
7. 怎么用python读取txt文件里指定行的内容,并导入excel
全文使用的是xlswriter模块写的,也有人使用xlrd与xlutils模块实现,不过还未进行验证
import xlsxwriter
workbook = xlsxwriter.Workbook("D:\Program Files\subpy\sql2.xlsx")#在指定目录下创建一个excle
worksheet = workbook.add_worksheet("students")#新建一个sheet
title_index = ["A"族顷,"B","C","D"]#sheet中的区域
li = [] #定义一个空列表
blod = workbook.add_format({"bold":True})#定义exlce中写入的字体with open("D:\Program Files\subpy\tets.txt",'r') as f1:#打开txt文档
lines = f1.readlines()#读取所有行内容
n = -1#定义一个变激穗山量
for x in lines:#逐行读取
n=n+1
li.append(x[:-1])#去掉回车符
y= x.split#以空格分字符
for i in range(len(title_index)):#读取excle区域下标
# for i,j in enumerate(title_index):
content = y[i]#单个字符读取
worksheet.write(n,i,content,blod)#分明中行分列写入workbook.
close#关闭excle