【发布时间】:2019-11-03 18:26:28
【问题描述】:
我需要遍历输入文件对,R1 和 R2,它们将一起处理并且每个都附加一个“.trim”文件扩展名。
我对 python 和 glob 的了解有限,它们在使用配对输入但单一输出的类似任务中效果很好。我完全不知道为什么这不起作用,尽管我确信这是一个简单的解决方法。
#!/usr/bin/python
import glob
import os
files = glob.glob("ATAC*R1*.fastq.gz")
for ifile in files:
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"))
Error:
line 7
^
SyntaxError: invalid syntax
这应该如下工作:
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占位符有关?错误消息说它在第 7 行,但占位符在第 6 行。 -
通常 Python 会显示一个指向语法错误的指针
^。这真的是整个错误信息吗? -
感谢您的快速回复!我愚蠢地遗漏了一个未被注意到的括号。
标签: python placeholder