如何修复此python%s占位符排列

如何修复此python%s占位符排列,python,placeholder,Python,Placeholder,我需要遍历输入文件对R1和R2,这两个文件将一起处理,每个文件都附加一个“.trim”文件扩展名 我对python和glob的了解有限,它们在使用成对输入但使用单个输出的类似任务中工作得很好。我完全不明白为什么这不起作用,尽管我相信这是一个简单的解决办法 #/usr/bin/python 导入glob 导入操作系统 files=glob.glob(“ATAC*R1*.fastq.gz”) 对于ifile in文件: 操作系统(“cutadapt-一个CTGTCTCTTACACATCT-一个CTG

我需要遍历输入文件对R1和R2,这两个文件将一起处理,每个文件都附加一个“.trim”文件扩展名

我对python和glob的了解有限,它们在使用成对输入但使用单个输出的类似任务中工作得很好。我完全不明白为什么这不起作用,尽管我相信这是一个简单的解决办法

#/usr/bin/python
导入glob
导入操作系统
files=glob.glob(“ATAC*R1*.fastq.gz”)
对于ifile in文件:
操作系统(“cutadapt-一个CTGTCTCTTACACATCT-一个CTGTCTTACACATCT-一个AGATGTTAAAGAGA-o%s.trim-p%s.trim%s%s”%(ifile,ifile.replace(“R1”,“R2”),ifile,ifile.replace(“R1”,“R2”))
这项工作应如下:

ATAC2-1_R1_.fastq.gz and ATAC2-1_R1_.fastq.gz -> ATAC2-1_R1_.fastq.gz.trim and ATAC2-1_R1_.fastq.gz.trim. 

我想迭代几个R1和R2对。感谢您的帮助!

与其尝试使用%s占位符,不如尝试使用.format(),如下所示:

"cutadapt -a CTGTCTCTTATACACATCT -A CTGTCTCTTATACACATCT -a AGATGTGTATAAGAGA -o {0}.trim -p {1}.trim {2} {3}".format(ifile, ifile.replace("R1","R2"), ifile, ifile.replace("R1","R2"))

唯一的问题是缺少结尾括号:

    os.system("cutadapt -a CTGTCTCTTATACACATCT -A CTGTCTCTTATACACATCT -a AGATGTGTATAAGAGA -o %s.trim -p %s.trim %s %s" % (ifile, ifile.replace("R1","R2"), ifile, ifile.replace("R1","R2")))

您只需要添加结尾括号,就应该停止出现语法错误。

我认为脚本的最后一行有一个非打印字符。您认为问题与
%s
占位符有关吗?错误消息说它在第7行,但占位符在第6行。通常是Python用
^
显示一个指向语法错误的指针。这真的是整个错误消息吗?感谢您的快速回复!我愚蠢地漏掉了一个未被注意到的括号。感谢您提供了另一个选择。这将是一个很好的练习方法!不要发布打字问题的真实答案,只需发布一条评论。答案会减慢速度胡佛删除了不好的问题。
    os.system("cutadapt -a CTGTCTCTTATACACATCT -A CTGTCTCTTATACACATCT -a AGATGTGTATAAGAGA -o %s.trim -p %s.trim %s %s" % (ifile, ifile.replace("R1","R2"), ifile, ifile.replace("R1","R2")))