NameError:使用python搜索关键字时未定义变量
我正在尝试扫描多个文件,并在同一行中搜索两个关键字。我试图在同一行中查找关键字“SEQADV”和“MUTATION”。问题是我一直收到错误“NameError:name'wt_residence'未定义”。当我搜索一个关键字“SEQADV”时,程序运行平稳NameError:使用python搜索关键字时未定义变量,python,python-3.x,csv,Python,Python 3.x,Csv,我正在尝试扫描多个文件,并在同一行中搜索两个关键字。我试图在同一行中查找关键字“SEQADV”和“MUTATION”。问题是我一直收到错误“NameError:name'wt_residence'未定义”。当我搜索一个关键字“SEQADV”时,程序运行平稳 if 'SEQADV' and 'MUTATION' in line: try: mutation = line.split() sequ
if 'SEQADV' and 'MUTATION' in line:
try:
mutation = line.split()
sequence_number = mutation[4]
chain = mutation[3]
mutant_residue = mutation[2]
wt_residue = mutation[7]
except IndexError:
pass
#Prints all data to the .csv file above and closes the file
print(",".join([pdb_name, mutant_residue, chain, sequence_number, wt_residue]), file=datafile)
datafile.close()
尝试将if语句更改为
如果line.split()中的'SEQADV'和line.split()中的'MUTATION':
尝试将if语句更改为如果line.split()中的'SEQADV'和line.split()中的'MUTATION':
如果行中的'SEQADV'和'MUTATION'不正确,则这一行不正确:如果代码命中except块,则未声明WTU剩余值except INDEXER:pass
是一个非常糟糕的主意。在分配之前,您可能会遇到错误。摆脱尝试
,看看是否出现错误。确定。我删除了除IndexError:pass之外的其他内容,但随后出现另一个错误,即“列表索引超出范围”。请问如何修复if语句?如果第行中的'SEQADV'和'MUTATION':
相当于第行中的'MUTATION'<代码>'SEQADV'作为布尔表达式计算,并且在该上下文中总是计算为True
。如果行中的'SEQADV'和'MUTATION'是不正确的,
也wt_剩余值
如果代码命中except块except INDEXROR:pass
是一个非常糟糕的主意。在分配之前,您可能会遇到错误。摆脱尝试
,看看是否出现错误。确定。我删除了除IndexError:pass之外的其他内容,但随后出现另一个错误,即“列表索引超出范围”。请问如何修复if语句?如果第行中的'SEQADV'和'MUTATION':
相当于第行中的'MUTATION''SEQADV'
作为布尔表达式计算,并且在该上下文中总是计算为True
。谢谢,我不知道为什么我没有想到这一点,但它没有问题。很乐意帮忙。谢谢你,我不知道为什么我没有想到这一点,但没问题。很乐意帮忙。