[英]When printing newlist getting error as newlist is not defined
def one(mylist):
newlist=[]
if len(mylist)>0:
newlist.append(mylist[0])
if len(mylist)>1:
newlist.append(mylist[1])
return newlist
values = [35,40,50,38,20]
print newlist
print one(newlist)
print newlist
它是一个小程序,我尝试在python上运行,但在打印新列表时未定义newlist的错误。 为什么?
newlist数组是在一个函数内部定义的,其范围仅限于该函数,因此在函数外部无法访问。
def one(mylist):
newlist=[]
if len(mylist)>0:
newlist.append(mylist[0])
if len(mylist)>1:
newlist.append(mylist[1])
return newlist
values = [35,40,50,38,20]
print one(values) #This will give the value of newlist returned from the
#function
或者您可以使用:
newlist=one(values)
print newlist
为什么您的代码看起来如此复杂,所以可以通过这种方式来避免判断len(mylist)和初始化newlist:
def one(mylist):
newlist = mylist[0:2]
return newlist
values = [35, 40, 50, 38, 20]
print(one(values))
上面的代码可以处理value为空[]或只有一个元素的情况。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.