Python 如何用列表中的最小索引替换特定整数

Python 如何用列表中的最小索引替换特定整数,python,list,Python,List,我有一个列表[11,12,13,14,15,16,17,18,19,13,20,13],我想把它变成[11,12,100,14,15,16,17,18,19,13,20,13],用最小的索引100替换13 我的代码是: lst= [11, 12, 13, 14, 15, 16, 17, 18, 19, 13, 20 ,13] k='13 100'.split() for i in range(len(lst)): if lst[i]== int(k[0]):

我有一个列表[11,12,13,14,15,16,17,18,19,13,20,13],我想把它变成[11,12,100,14,15,16,17,18,19,13,20,13],用最小的索引100替换13

我的代码是:

lst= [11, 12, 13, 14, 15, 16, 17, 18, 19, 13, 20 ,13]
k='13 100'.split()
for i in range(len(lst)):
       if lst[i]== int(k[0]):
            lst[i]=int(k[1])
            break
这是可行的,但我想知道另一种更简单、能够缩短执行时间的方法。 非常感谢

就这么简单:

lst= [11, 12, 13, 14, 15, 16, 17, 18, 19, 13, 20, 13]
lst[lst.index(13)] = 100
产生

[11, 12, 100, 14, 15, 16, 17, 18, 19, 13, 20, 13]
现在,如果您不确定列表中是否包含13,可以将上述代码包装在try-except块中:

简单地说:

lst= [11, 12, 13, 14, 15, 16, 17, 18, 19, 13, 20, 13]
lst[lst.index(13)] = 100
产生

[11, 12, 100, 14, 15, 16, 17, 18, 19, 13, 20, 13]
现在,如果您不确定列表中是否包含13,可以将上述代码包装在try-except块中:

以上程序将解决您的问题。在运算符中搜索元素并返回s true(如果存在),否则返回false。 index函数确定列表中指定整数的索引

以上程序将解决您的问题。在运算符中搜索元素并返回s true(如果存在),否则返回false。
index函数确定列表中指定整数的索引。

Cool!因为它在找到前13个之后停止,所以后13个不会被更改。@ypsilon这是由于.index list方法的工作方式造成的。它只返回第一个实例。@ypsilon您还可以用v_old,v_new=mapint,“13 100”替换k='13 100'.split和每个循环中int的后续强制转换。splitCool!因为它在找到前13个之后停止,所以后13个不会被更改。@ypsilon这是由于.index list方法的工作方式造成的。它只返回第一个实例。@ypsilon您还可以用v_old,v_new=mapint,'13 100'.split替换k='13 100'.split和每个循环中int的后续强制转换