优草派  >   Python

python简单分割文件的方法

陈思远            来源:优草派

Python是一门广泛应用于许多领域的高级编程语言,文件处理是Python中非常常见的任务之一。在文件处理过程中,我们可能需要对文件进行分割,以便更好地进行操作。本文将介绍Python中简单的文件分割方法。 第一种方法是基于行数的分割。我们可以使用Python中的readlines()方法来读取文件中的所有行并将其存储在一个列表中,然后分割该列表并将其写入其他文件。以下是一个示例代码: file = open('example.txt', 'r') lines = file.readlines() file.close() chunk_size = 100 num_chunks = len(lines) // chunk_size + 1 for i in range(num_chunks): chunk = lines[i*chunk_size:(i+1)*chunk_size] chunk_file = open(f'example_chunk_{i}.txt', 'w') chunk_file.writelines(chunk) chunk_file.close() 第二种方法是基于文件大小的分割。我们可以使用Python中的os模块和os.path模块来获取文件大小并将文件分割为块。以下是一个示例代码: import os import os.path input_file = 'example.txt' max_bytes = 100000 chunk_num = 0 with open(input_file, 'rb') as input_f: while True: chunk = input_f.read(max_bytes) if not chunk: break output_filename = f'example_chunk_{chunk_num}.txt' with open(output_filename, 'wb') as output_f: output_f.write(chunk) chunk_num += 1 print(os.path.abspath(output_filename)) 第三种方法是基于特定内容的分割。我们可以使用Python中的re模块来分割具有特定内容的文件。以下是一个示例代码: import re input_file = 'example.txt' output_base = 'example_chunk_' largest_chunk_size = 1000 with open(input_file, 'r') as input_f: chunk = [] for line in input_f: if len(chunk) > largest_chunk_size: output_file = output_base + str(len(chunk)) + '.txt' with open(output_file, 'w') as output_f: output_f.write('

'.join(chunk)) chunk = [] continue chunk.append(line.strip()) if chunk: output_file = output_base + str(len(chunk)) + '.txt' with open(output_file, 'w') as output_f: output_f.write('

python简单分割文件的方法

'.join(chunk)) 摘要:Python是一种高级编程语言,也是广泛使用的语言之一。在Python中,文件处理是一项非常普遍的任务,文件分割是其中的一部分。本文将介绍Python中的三种简单的文件分割方法。它们分别是基于行数、基于文件大小和基于特定内容的分割。 关键词:Python,文件分割,基于行数,基于文件大小,基于特定内容。 标签:Python开发

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。
TOP 10
  • 周排行
  • 月排行