我有以下代码:timeLS1 = 0.1timeLS2 = 0.2timeLS3 = 0.15timeLS4 = 0.5timeLS5 = 0.4timeLS6 = 0.3timeLSv = (timeLS1, timeLS2, timeLS3, timeLS4, timeLS5, timeLS6)timeLS = max(timeLSv)print timeLSindex_max = timeLSv.index(timeLS)print index_max我想获得最大值(timeLS)以及timeLS1, ...., timeLS6对应于最大值的变量()的名称。什么是最简单的方法(而不是在获取之后循环执行if index_max)?
1 回答
MMTTMM
TA贡献1869条经验 获得超4个赞
不知道这是否是最好的方法,但是看起来不错:
timeLS1 = 0.1
timeLS2 = 0.2
timeLS3 = 0.15
timeLS4 = 0.5
timeLS5 = 0.4
timeLS6 = 0.3
data = {key: value for key, value in locals().iteritems() if 'timeLS' in key}
key, value = max(data.iteritems(), key=lambda x: x[1])
print key, value # prints 'timeLS4 0.5'
您可能还想避免创建其他data词典。
希望能有所帮助。
添加回答
举报
0/150
提交
取消