【发布时间】:2021-04-15 22:21:53
【问题描述】:
代码如下:
def sortByAveScore (bList):
for x in range(len(aNameLst)):
avgsorted=sorted(average)
sortlist=list(zip(aNameLst,avgsorted))
sortname=sorted(sortlist,key=lambda x: x[1])
return(sortname)
sortByAveScore (bList)
我得到参数未定义的错误,但如果我取消参数,它工作正常。我做错了什么或者我对此不理解什么?我是编程新手,所以有点困惑。
def sortByAveScore ():
for x in range(len(aNameLst)):
avgsorted=sorted(average)
sortlist=list(zip(aNameLst,avgsorted))
sortname=sorted(sortlist,key=lambda x: x[1])
print(sortname)
sortByAveScore ()
【问题讨论】:
-
为什么要把
bList给sortByAveScore?它从未在函数中使用过。你的意思是在函数内部写bList而不是aNameLst,然后写sortByAveScore(aNameLst)? -
请显示minimal reproducible example。如果它说
bList没有定义——所以它没有定义,你不能和解释器争论。在第一个 sn-p 中,无论如何您都不会使用bList参数。在这两个片段中,您都使用全局aNameList和average。
标签: python function parameters