我測試我的python腳本:sh:-c:第1行:意外標記附近的語法錯誤`;'
#!/usr/bin/python
import os,sys
import glob
import commands
import gzip
from itertools import islice
f1=gzip.open("/home/xug/scratch/test_trim.fastq","w")
LIST=[]
N = 4
with open("/home/xug/scratch/test.fastq", "r") as f:
while True:
line_group = list(islice(f, N))
if not line_group:
break
l3=line_group[3].rstrip()
l3_trim=commands.getoutput("sed 's/\(.\)B*$/\1/g'" + l3)
#l3_to = subprocess.Popen(["sed 's/\(.\)B*$/\1/g'",l3],
#stdout=subprocess.PIPE,bufsize=1)
#l3_trim=l3_to.stdout
if (float(len(l3_trim))/float(len(l3)) > 0.70):
LIST.append(line_group[0])
LIST.append(line_group[1][:int(len(l3_trim))])
LIST.append(line_group[2])
LIST.append(l3_trim)
output=f1.writelines(LIST)
但是我得到了像錯誤:
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
sh: -c: line 0: unexpected EOF while looking for matching ``'
sh: -c: line 1: syntax error: unexpected end of file
最終杜絕while循環....
從最基本的問題開始:'l3'包含什麼? –
l3,是一個變量:l3 = list [3] – user815408
我在你的代碼中看到(實際上是'l3 = line_group [3]')。但是,這仍然沒有告訴我們該變量的*內容*是什麼。如果你不知道,試試'print'語句。 –