使用 if-else 指定索引
specifying indices using if-else
我的代码是这样的:
if self.modality == "A":
idx = 0
elif self.modality == "B":
idx = 1
elif self.modality == "C":
idx = 2
elif self.modality == "D":
idx = 3
elif self.modality == "all":
idx = 0:5
my_value = get_value(my_array[idx])
我的问题是 self.modality
的不同值,我想要 my_array
的特定不同索引。当 self.modality== "all"
时,我想要特定的值范围。
我怎样才能做到这一点?
你的代码就差不多了,你可以通过索引引用 lists,例如:my_array[idx]
.
所以...
def modality_check(self):
if self.modality == "A":
return my_array[0]
elif self.modality == "B":
return my_array[1]
...
...
...
elif self.modality = "All":
return my_array[2:5]
在 Python 中,从一组值映射到另一组值的常用方法是使用字典。另请注意,dict 值可以是任何 Python 实体,例如表示 (low, high)
范围的元组,甚至 class 来实例化!
因此,如果您想将一些文本字符串映射到某些范围,您可以编写类似
的代码
low,high = {
"A":(0,1), "B":(1,2), "C":(2,3), "D":(3,4), "all":(0,5)
} [self.modality]
my_value = get_value( my_array[low:high] )
我的代码是这样的:
if self.modality == "A":
idx = 0
elif self.modality == "B":
idx = 1
elif self.modality == "C":
idx = 2
elif self.modality == "D":
idx = 3
elif self.modality == "all":
idx = 0:5
my_value = get_value(my_array[idx])
我的问题是 self.modality
的不同值,我想要 my_array
的特定不同索引。当 self.modality== "all"
时,我想要特定的值范围。
我怎样才能做到这一点?
你的代码就差不多了,你可以通过索引引用 lists,例如:my_array[idx]
.
所以...
def modality_check(self):
if self.modality == "A":
return my_array[0]
elif self.modality == "B":
return my_array[1]
...
...
...
elif self.modality = "All":
return my_array[2:5]
在 Python 中,从一组值映射到另一组值的常用方法是使用字典。另请注意,dict 值可以是任何 Python 实体,例如表示 (low, high)
范围的元组,甚至 class 来实例化!
因此,如果您想将一些文本字符串映射到某些范围,您可以编写类似
的代码low,high = {
"A":(0,1), "B":(1,2), "C":(2,3), "D":(3,4), "all":(0,5)
} [self.modality]
my_value = get_value( my_array[low:high] )