获取python的NZEC错误:
我是python的新手,一周前开始学习该语言,并尝试在codechef中进行测试 以下是问题链接: 因此,根据我目前的理解,我键入了以下代码获取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)):
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!