Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
获取python的NZEC错误:_Python_Runtime_Runtime Error - Fatal编程技术网

获取python的NZEC错误:

获取python的NZEC错误:,python,runtime,runtime-error,Python,Runtime,Runtime Error,我是python的新手,一周前开始学习该语言,并尝试在codechef中进行测试 以下是问题链接: 因此,根据我目前的理解,我键入了以下代码 t=int(input()) f=[] if(t >= 1 and t <= 50): for each in range(t): n=int(input()) if(n >= 1 and n <=50): m=input().split() for i in range(len(m)):

我是python的新手,一周前开始学习该语言,并尝试在codechef中进行测试

以下是问题链接:

因此,根据我目前的理解,我键入了以下代码

t=int(input())
f=[]
if(t >= 1 and t <= 50):
  for each in range(t):
    n=int(input())
    if(n >= 1 and n <=50):
      m=input().split()
      for i in range(len(m)):
        if(m[i]=='milk'):
          q=1
        elif(len(m)==1 and m[0]=='cookie'):
          q=0
          break
        elif(m[i]=='cookie' and m[i+1]!='milk'):
          q=0
          break
      f.append(q)
  for i in f:
    if(i==1):
      print("YES")
    elif(i==0):
      print("NO")
t=int(输入())
f=[]
如果(t>=1,t=1,nNZEC代表“非零退出代码”。当遇到运行时错误时,通常会出现索引越界错误

代码的第14行有一个错误:

elif (m[i]=='cookie' and m[i+1]!='milk'):
if m[-1]=='cookie':
    f.append(0)
    continue
如果i+1超出范围怎么办? 例如。, 考虑输入是:

一,

三,

饼干牛奶饼干

  • 1是测试用例的数量
  • 3是表中的元素数 名单
  • “cookie milk cookie”由列表元素组成
当i的值为2且代码的第14行开始执行时,它将生成一个索引越界错误(因为m[i+1]即m[3]不存在!),这是一种运行时错误,因此会生成NZEC错误

在代码的第7行后添加此代码:

elif (m[i]=='cookie' and m[i+1]!='milk'):
if m[-1]=='cookie':
    f.append(0)
    continue

那么如何改进代码呢?我知道c/c++的基础知识,但不知道如何在python中实现它……正如你所知,我正在理解这门语言。顺便说一句,谢谢你的回答。首先,你不必感谢答案,你可以投票给我一个答案!我编辑了我的答案,以摆脱NZEC!