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

标签 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](将索引最小的 13 替换为 100。)

我的代码是:

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 block 中:

try:
    lst[lst.index(13)] = 100
except ValueError:
    print('Value does not exist in list')

关于python - 如何用列表中的最小索引替换特定整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52774490/

相关文章:

python 3.0 readline()随机跳转

python - 如何从脚本而不是终端使用 PyInstaller?

python - 在 Python 中使用 Mechanize 时出现解析错误

python - pytest 属性错误 : 'Function' object has no attribute 'get_marker'

css - 我应该在 CSS 中使用什么来在导航栏中的水平列表项之间创建空格?

list - 如何更新 Haskell 列表中的特定元组?

Python:分配多个嵌套列表的最短方法是什么

python - 如何从 Python 列表中提取元素同时考虑提取元素的位置?

python - 如何在累加器坐标位移范围内定义广义霍夫变换的高斯投票?

list - Haskell 中的替代 ZipList 实例?