读取csv或tsv格式的文件时,经常需要读取跳过文件头,直接读取文件内容,假定我们要读取的文件格式如下:
data.tsv
id
|
score
|
review
|
1
|
5.0
|
This is a good product
|
2
|
3.0
|
Not so bad
|
我们只需读取文件数据而无需文件头信息,那么最简单的方法就是打开文件后在循环中判断是否为第一行,是第一行则跳过:
with open('data.tsv', 'r') as f:
lines = f.readlines()
for line_counter, line in enumerate(lines):
if line_counter != 0:
...
f.close()
但是这种写法在每次循环中都要做一次if判断,很耗时,下面给定几种更为高效的方法:
with open('data.tsv', 'r') as f:
next(f)
lines = f.readlines()
for line in lines:
...
f.close()
如果需要文件头,则可将next函数的返回值存入变量中:
first_line = next(f)
f.readlines()函数返回的是一个保存了每行内容的list,根据此特性可以直接从第二行开始获取
with open('data.tsv', 'r') as f:
lines = f.readlines()[1:]
for line in lines:
...
f.close()
from itertools import islice
with open('data.tsv', 'r') as f:
for line in islice(f, 1, None):
f.close()
这个工具有个好处就是可以根据参数从任一行开始读取,例如在islice()函数的第二个参数中传入5,则表示从第5行开始读取。
在读取文件的时候,我们很多时候并不需要文件头的注释信息(即第一行),通过判断其是否是第一行来读取在读取大文件时很费劲(每读取一行判断一次)。
下面是我跳过第一行的方法总结
打开文件后f.readlines()返回的是一个包含每一行的列表,因此我们可以如下操作(也可以从任意行开始读取):
with open('file_name', 'r') as f:
lines = f.readli...
Python编程时,经常需要跳过第一行读取文件内容。比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。相应的Python代码如下:
#input_file = open("C:\\Python34\\test.csv") #这种写法读取完了要进行close操作
with open("C:\\...
原博文2016-11-02 16:42 −Python编程时,经常需要跳过第一行读取文件内容。比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。相应的Python代码如下: [python] view plain copy i...相关推荐2019-12-22 13:39 −python输入/输出1)输出方式: 1、表...
Python编程时,经常需要跳过第一行读取文件内容。比较容易想到是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。相应的Python代码如下:
input_file = open("C:\\Python34\\test.csv")
line_num = 0
for line in islice(input_file, 1, None):
Python编程时,经常需要跳过第一行读取文件内容。简单的做法是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。相应的Python代码如下:input_file = open("C:\\Python34\\test.csv")line_num = 0for line in input_file:line_num += 1if (line_num !=...
with open('file.csv','r',newline="",encoding="GB18030") as read_csvfile:
readcsv_all = csv.reader(read_csvfile)
next(read_csvfile) #跳过第一行“标题”
for line in readcsv_all:
Python编程时,经常需要跳过第一行读取文件内容。简单的做法是为每行设置一个line_num,然后判断line_num是否为1,如果不等于1,则进行读取操作。相应的Python代码如下:
input_file = open("C:\\Python34\\test.csv")
line_num = 0
for line in input_file:
line_num +=