大家帮帮我
x1 = 1
d = 3
n = 100
x100 =x1+(n-1)*d
s = n*[x1+x1+(n-1)]/2
print s
错误在哪点呀?
x1 = 1
d = 3
n = 100
x100 =x1+(n-1)*d
s = n*[x1+x1+(n-1)]/2
print s
错误在哪点呀?
2015-07-05
好吧,就算你要套用上面x100那个公式,也应该是s=n*[x1+x1+(n-1)*d]/2才对。不过这个也是不可行的,当你把代码输入以后Python会提示TypeError : unsupported operand type(s) for /: 'list' and 'int'
大概的意思就是Python无法确定你这个s是什么类型的变量,为什么呢,学到后面你会知道,Python中可以用[ ]创建list,如L=['jfeijfsjsj','sfjsdljg'],然后你这个/又是用于整数之间运算的,所以这几个放在一起系统就无法确认你这个s到底是什么类型的东西啦。
这正是为什么前面要先定义x100的原因,这样就可以用s = (x1 + x100) * n / 2避免其他括号的使用而不造成歧义,得到正确答案。
也可以直接用s=n+(x1+x1+(n-1)*d)*0.5这个公式算,前面就不用输入x100。
举报