1.TypeError: unsupported operand type(s) for /: 'list' and 'int'
案例:
import numpy as np
# 第一大题学生分数
scoreOne = [16, 16, 18, 16, 20, 18, 14, 16, 8, 18, 14, 18, 20, 10, 16, 20, 16, 18, 20, 16, 20, 20, 18, 18, 16, 14, 16, 10, 12, 16, 10, 16, 16, 18, 20, 16, 20, 18, 18, 18, 14, 16, 20, 20, 18, 6, 20, 18, 20, 12, 20, 12, 20, 14, 14, 18, 18, 12, 18, 16, 20, 20, 18, 20, 20, 16, 18, 18, 14, 12, 16, 16]
# 第二大题学生分数
scoreTwo = [50, 45, 45, 45, 50, 40, 30, 50, 20, 25, 35, 40, 50, 25, 40, 50, 35, 45, 50, 40, 50, 50, 45, 35, 35, 45, 45, 25, 40, 35, 40, 45, 40, 40, 50, 40, 50, 45, 50, 35, 40, 50, 50, 50, 40, 25, 50, 25, 50, 25, 50, 35, 30, 30, 45, 50, 30, 40, 45, 40, 50, 50, 30, 50, 45, 40, 45, 45, 45, 35, 45, 40]
scoreThree=scoreOne+scoreTwo
sumArr=(scoreThree/80)*100
print(sumArr)
正确如下:
import numpy as np
# 第一大题学生分数
scoreOne = [16, 16, 18, 16, 20, 18, 14, 16, 8, 18, 14, 18, 20, 10, 16, 20, 16, 18, 20, 16, 20, 20, 18, 18, 16, 14, 16, 10, 12, 16, 10, 16, 16, 18, 20, 16, 20, 18, 18, 18, 14, 16, 20, 20, 18, 6, 20, 18, 20, 12, 20, 12, 20, 14, 14, 18, 18, 12, 18, 16, 20, 20, 18, 20, 20, 16, 18, 18, 14, 12, 16, 16]
# 第二大题学生分数
scoreTwo = [50, 45, 45, 45, 50, 40, 30, 50, 20, 25, 35, 40, 50, 25, 40, 50, 35, 45, 50, 40, 50, 50, 45, 35, 35, 45, 45, 25, 40, 35, 40, 45, 40, 40, 50, 40, 50, 45, 50, 35, 40, 50, 50, 50, 40, 25, 50, 25, 50, 25, 50, 35, 30, 30, 45, 50, 30, 40, 45, 40, 50, 50, 30, 50, 45, 40, 45, 45, 45, 35, 45, 40]
scoreOneArr=np.array(scoreOne) #使用np.array 创建这两个列表对应的一维数组
scoreTwoArr=np.array(scoreTwo) #使用np.array 创建这两个列表对应的一维数组
arrThree=scoreOneArr+scoreTwoArr
sumArr=(arrThree/80)*100
print(sumArr)
#错误表示:不支持 int整型和 list列表的 减法运算,列表不是numpy的数组,没有广播运算。
因此需要将列表列表变成numpy数组,进行广播运算,就不会报错了。



