关于#python#批处理txt文件的问题,如何解决?

我希望从txt文本中提取出ATOM到TER的行段中提取出第18-20列的数据(标蓝的第一行中第18-10列的数据是LEU),文本中有多个ATOM-TER的行段,多个行段的数据都要提取出来,并且有数千个文本需要处理,希望得到一个批处理的python程序。

img

该回答引用自ChatGPT

import re
def extract_data(file_name):
    with open(file_name, 'r') as f:
        lines = f.readlines()
        for line in lines:
            if re.match('ATOM.*TER', line):
                data = line[17:20]
                print(data)
if __name__ == '__main__':
    file_names = ['file1.txt', 'file2.txt', 'file3.txt', ...]
    for file_name in file_names:
        extract_data(file_name)

只要开头是ATOM或TER的就提取第18-20列数据?
保证所有文本格式统一,用循环即可轻松处理几千甚至上万文本