*分解操作报错

简单的去头尾求平均值,代码如下:
def avg(x):
    return sum(x)/len(x)
def drop_first_last(grades):
    first,*middle,last = grades
    return avg(middle)
Mygrades=[98,59,61,60]
drop_first_last(Mygrades)
报错信息如下
  first,*middle,last = grades
        ^
SyntaxError: invalid syntax
请问这个报错是什么意思,不能用*吗?系统认为*是乘法吗?


qq_strengthoo_0
浏览 1760回答 3
3回答

千载悠悠丶

Syntax,语法;SyntaxError顾名思义就是语法错误呀,根据报错信息也表明是*middle出现了语法错误。而python变量的命名规则是开头必须下划线或者字母,开头用*是违反语法的。不要把C语言的指针和这个混淆。
打开App,查看更多内容
随时随地看视频慕课网APP