我有这段代码:
timeLS1 = 0.1
timeLS2 = 0.2
timeLS3 = 0.15
timeLS4 = 0.5
timeLS5 = 0.4
timeLS6 = 0.3
timeLSv = (timeLS1, timeLS2, timeLS3, timeLS4, timeLS5, timeLS6)
timeLS = max(timeLSv)
print timeLS
index_max = timeLSv.index(timeLS)
print index_max
我想获得最大值(timeLS
)加上与最大值对应的变量名{(1}})。
最简单的方法是什么(而不是在获得timeLS1, ...., timeLS6
后进行if循环)?
由于
答案 0 :(得分:2)
不确定这是否是最佳方法,但看起来不错:
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
字典。
希望有所帮助。