我需要处理一些大文件(每个文件的大小约为350MB)。我需要执行以下操作:
将每个文件(不包含标题)保存到具有新文件名的不同目录中
示例:Station_1.txt“->” Station_1_noheader.txt“
这将是ArcGIS中地理处理脚本的第一部分。
为了可见/清晰起见,这是基于the linked Q/A的解决方案:
import itertools as itt
in_file_path = "../resources/nasdaqlisted.txt"
out_file_path = "../out/temp_out.txt"
num_lines_skip = 5
with open(in_file_path) as file_in, open(out_file_path, "w") as file_out:
file_out.writelines(itt.islice(file_in, num_lines_skip, None))
[documentation on itertools.islice()
,每当传递2个或更多参数时,第一个参数是要跳过的元素数,第二个参数是要停止的位置,当设置为itertools.islice()
时,它将停止元素,直到迭代器耗尽为止。 >
我相信这是一样高效和直接的。
假设每个文件在打开文件后要跳过的行数相同,请从第n行读取内容
也许这是最好的方法?摘自rows = f.readlines()[n:]
,链接到@bzzzt