Python 将for的索引赋给变量名词
我有以下几个变量:Python 将for的索引赋给变量名词,python,Python,我有以下几个变量: time1 = end_time1 - start_time1 ... time2 = end_time2 - start_time2 ... time3 = end_time3 - start_time3 ... time4 = end_time4 - start_time4 ... time5 = end_time5 - start_time5 我想说的是: for i in range(5): print ("Search for " + str(i) + "
time1 = end_time1 - start_time1
...
time2 = end_time2 - start_time2
...
time3 = end_time3 - start_time3
...
time4 = end_time4 - start_time4
...
time5 = end_time5 - start_time5
我想说的是:
for i in range(5):
print ("Search for " + str(i) + " element(s), has taken: " + "{0:.2f}".format(round(time,2)))
但是,在格式(round(time,2))
中,我想使用索引'I'from for来命名变量time,比如time1、time2、time3
有什么线索吗?你可以使用
locals()
:
您可以将时间变量放在一个列表中(实际上,首先将timeX变量作为一个列表,而不是单独的变量,这可能是有利的)
我想你应该使用一个合适的数据结构,比如一个列表或者一个口述,这是另一个选择,更好,当然,哈哈,但无论如何,我想知道我怎么做。谢谢。好的,这个“成功”了。我的意思是,我使用了
globals()
,但我得到了相同的错误:。所以我把globals()
改为locals()
,一切都很完美。非常感谢。@Zariweya,很高兴能帮上一点忙(有点)也谢谢你的回答。这也是正确的方法。
for i in range(5):
print ("Search for " + str(i) + " element(s), has taken: " + "{0:.2f}".format(round(locals()['time'+str(i+1)],2)))
times = [time1, time2, time3, time4, time5]
for i in range(5):
print ("Search for " + str(i) + " element(s), has taken: " + \
"{0:.2f}".format(round(times[i],2)))