huaMinPython 2021-11-04 13:43 采纳率: 50%
浏览 16

为啥使用检索函数index需要用到try-except才能成功

这是一个检索,从列表b1中找到num1的位置,检索结果放进列表b2
我的问题是为啥需要try except才能成功,没有try except就不成功
下面这个是运行不成功的代码

b1=[5,10,5]
num1=5
start=0
b2=[]
while 1:
    x=b1.index(num1,start)
    b2.append(x)
    start=x+1
print(b2)

下面这个是运行成功代码:

b1=[5,10,5]
num1=5
start=0
b2=[]
while 1:
    try:
        x=b1.index(num1,start)
        b2.append(x)
        start=x+1
    except:
        break
print(b2)


下面这个是运行不成功的报错:

img

  • 写回答

2条回答 默认 最新

  • huaMinPython 2021-11-04 13:50
    关注

    这个问题的核心是index函数,
    不用index也可以做。直接用for循环和if条件语句就可以。下面是代码段。

    
    b1=[5,10,5]
    num1=5
    start=0
    b2=[]
    for i in range(3):
        if b1[i]==num1:
            b2.append(i)
    print(b2)
    
    评论

报告相同问题?

问题事件

  • 创建了问题 11月4日

悬赏问题

  • ¥15 如何实现H5在QQ平台上的二次分享卡片效果?
  • ¥15 python爬取bilibili校园招聘网站
  • ¥30 求解达问题(有红包)
  • ¥15 请解包一个pak文件
  • ¥15 不同系统编译兼容问题
  • ¥100 三相直流充电模块对数字电源芯片在物理上它必须具备哪些功能和性能?
  • ¥30 数字电源对DSP芯片的具体要求
  • ¥20 antv g6 折线边如何变为钝角
  • ¥30 如何在Matlab或Python中 设置饼图的高度
  • ¥15 nginx中的CORS策略应该如何配置