代码在文本文件中使用一行代码(该部分有效 - 感谢您的帮助)。但是如果在该行中没有满足条件(如果它不包含单词“Intron”或单词“Exon”),它应该跳到下一行并重复该动作。
dataFile = open('test.txt', 'r')
wordexon = "Exon"
wornintron = "Intron"
for eachLine in dataFile:
if wordexon or wordintron in Line:
tmpStr = ' '
for char in eachLine:
tmpStr += char
s = tmpStr.split()
print '\t'.join((s[0], s[3], s[4]))
else next(iter)
答案 0 :(得分:3)
只需删除
即可else next(iter)
那样做。
那就是说,你可以像这样编写你的代码:
for eachLine in dataFile:
if not ((wordexon in Line) or (wordintron in Line)):
continue
tmpStr = ' '
for char in eachLine:
tmpStr += char
s = tmpStr.split()
print '\t'.join((s[0], s[3], s[4]))
另外,你的情况是错误的。它将始终按原样输入if
。
答案 1 :(得分:1)
删除next(iter)
或使用continue
来明确您的意图。
s = tmpStr.split()
print '\t'.join((s[0], s[3], s[4]))
else:
continue