【发布时间】:2017-09-27 21:00:56
【问题描述】:
我正在处理下面的代码,其中 AnalyteName_user_input 是一个字符串列表,如下图所示。
有时,索引 7 的值是“W”而不是“W2”。当前目标是创建一个新列表,即 AnalyteRatio_user_input。这将包含来自 MeanResponse_list 列表的浮点值之间的比率评估值。我相信当前的问题在于我试图使用 if-in-and-if-in 语句的第 3 行。我认为问题在于我试图调用枚举中的下一行,但 line+1 是 AnalyteName_user_input 列表中的“W”值。我将如何解决这个问题以调用列表中的下一行而不是字符串,然后添加一些 int 值?
AnalyteRatio_user_input = []
for i, line in enumerate(AnalyteName_user_input):
if 'W' in line and 'W2' in line+1: # need a way to define the next line. Unsure about this.
AnalyteRatio_user_input.append(MeanResponse_list[i]/MeanResponse_list[i+5])
AnalyteRatio_user_input.append(MeanResponse_list[i+1]/MeanResponse_list[i+5])
AnalyteRatio_user_input.append(MeanResponse_list[i+2]/MeanResponse_list[i+5])
AnalyteRatio_user_input.append(MeanResponse_list[i+3]/MeanResponse_list[i+5])
AnalyteRatio_user_input.append(MeanResponse_list[i+4]/MeanResponse_list[i+5])
AnalyteRatio_user_input.append(MeanResponse_list[i+5]/MeanResponse_list[i+5])
else:
AnalyteRatio_user_input.append('N/A')
【问题讨论】:
-
这个
AnalyteName_user_input[i+1]? -
IndexError: 列表索引超出范围
-
只有最后一行,是吗?
-
是的,我是 395,AnalyteName_user_input 的大小是 396。
标签: python python-3.x for-loop if-statement append