从文件夹中读取所有文件并编辑

Read all files from folder and edit

我正在尝试从测试文件夹中读取所有 fasta 文件,并将文件名放入所有 headers 个单个文件中。该代码适用于第一个文件,不继续处理第二个文件,并且出现 return 错误。你能帮我找到我的代码中的错误或编辑它吗?谢谢

import sys, glob, os, string
header = ''
check = 0
path = "./test/"
dirs = os.listdir(path)
for file in dirs:
    fp = open(file, "r")
    fpx = open('%s_output.txt' % file, 'w')
    for line in fp:
        if line.startswith('>'):
            line = line.rstrip()
            check = check + 1
            if check >= 1:
                header = line
                fpx.write(header + '_' + file + '\n')
        else:
            line = line.rstrip()
            fpx.write(line + '\n')

最好提供您收到的错误消息!我认为这一定会因 "File not found" 而失败,因为您尝试按名称而不是路径打开文件。试试 fp = open(os.path.join(path, file), "r"):

import sys, glob, os, string
header = ''
check = 0
path = "./test/"
dirs = os.listdir(path)
for file in dirs:
    fp = open(os.path.join(path, file), "r")
    fpx = open('%s_output.txt' % file, 'w')
    for line in fp:
        if line.startswith('>'):
            line = line.rstrip()
            check = check + 1
            if check >= 1:
                header = line
                fpx.write(header + '_' + file + '\n')
        else:
            line = line.rstrip()
            fpx.write(line + '\n')