m0_58872055 2021-06-01 23:24 采纳率: 100%
浏览 274
已采纳

python IndexError: list index out of range

def job(time):#[[5,2,4],[1,8,5],[6,4,5]]
    ls=['A','B','C']
    minnum=time[0][0]+time[1][0]+time[2][0]
    for i in range(3):
        for j in range(3):
            for k in range(3):
                if i!=j and j!=k and i!=k:
                    if time[0][i]+time[1][j]+time[2][k]<minnum:
                        minnum=time[0][i]+time[1][j]+time[2][k]
                        a,b,c=i,j,k
    return (minnum,a,b,c)

time_all = []
for x in range(3):
    time_one = input().split()
    time_one = [eval(x) for x in time_one]
    time_all.append(time_one)
result=job(time_all)
for  x  in  result:
        print(x,end="  ")

第三行代码报错:说下标超出范围是为啥?

  • 写回答

4条回答 默认 最新

  • 关注

    代码没问题,应该是你输入格式不对,要分三行输入,每行三个数

    split()默认是用空格分割字符串的

    每行三个数之间要加了一个空格。不是逗号。

     

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • CSDN专家-HGJ 2021-06-02 00:17
    关注

    代码没有问题,可能是你输入数据格式错误,分三次输入数据,每次输入后要回车,每次输入三个数需空格隔开,不能用逗号隔开,因为在代码中分割字符串用的是split(),分割空格。

    如对解答满意,请点采纳 。

    评论
  • technologist_30 2021-06-01 23:42
    关注

    原因在你传参数型的时候数组问题,你可以打印出来看下你数组数据

    评论
  • 有问必答小助手 2021-06-02 10:13
    关注

    您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

    如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

    ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632

    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 STM32U575 pwm和DMA输出的波形少一段
  • ¥30 android百度地图SDK海量点显示标题
  • ¥15 windows导入environment.yml运行conda env create -f environment_win.yml命令报错
  • ¥15 这段代码可以正常运行,打包后无法执行,在执行for内容之前一直不断弹窗,请修改调整
  • ¥15 C语言判断有向图是否存在环路
  • ¥15 请问4.11到4.18以及4.27和4.29公式的具体推导过程是怎样的呢
  • ¥20 将resnet50中的卷积替换微ODConv动态卷积
  • ¥15 通过文本框输入商品信息点击按钮将商品信息列举出来点击加入购物车商品信息添加到表单中
  • ¥100 这是什么压缩算法?如何解压?
  • ¥20 upload上传实验报错500,如何解决?(操作系统-windows)