从一个字符串元组开始的函数,该函数创建字典并添加索引(键)和字符串长度(值)。
但是,for循环仅添加某些条目(在本例中为索引0和2),无法弄清原因。
码:
def check_horse_winner(tup):
results=dict()
for i in tup:
results[tup.index(i)]=len(i)
return results
print(check_horse_winner(("HORSE", "HORSE", "HORS", "HORSE")))
输出:
{0: 5, 2: 4}
最佳答案
该元组中有相同的元素。 index
返回第一个元素的索引-因此,您的程序执行以下操作:
i
是"HORSE"
,index
返回0。i
再次是"HORSE"
,index
将返回它的第一次出现,即再次为0。 这就是所有方式-
"HORS"
除外(我认为这只是一个错误)。解决方案:
遍历索引,而不是元组本身,如下所示:
for i in range(len(tup)):
results[i] = len(tup[i])