range函数和for循环, 请问第四行代码错误的原因是啥呢?
完全小白求助打印不出来,报错想做一个1到10的,平方数的列表
squres = []
for value in range(1,11):
squre = value**2
squres = squres.append(squre)
print(squres)
squares.append(square)是改变squares自身,返回None
squares = []
for value in range(1, 11):
square = value ** 2
squares.append(square)
print(squares) 应该改成:
squres = []
for value in range(1,11):
squre = value**2
squres.append(squre)
print(squres)
因为这里列表是可改变的序列,所以不需要再重新去进行赋值操作,
只有在遇到元组,字符串之类类型的才需要这样做!
打字不易!请给个好评! squares = []
for value in range(1, 11):
a = value**2
squares.append(a) # <---------- 注意这里
print(squares) ckblt 发表于 2022-2-1 15:10
squares.append(square)是改变squares自身,返回None
返回None是什么意思呢?
ckblt 发表于 2022-2-1 15:10
squares.append(square)是改变squares自身,返回None
AttributeError: 'NoneType' object has no attribute 'append'
我返回的是这个, 为什么是 none呢,谢谢老板 python爱好者. 发表于 2022-2-1 15:52
应该改成:
因为这里列表是可改变的序列,所以不需要再重新去进行赋值操作,
那我这么操做出来
AttributeError: 'NoneType' object has no attribute 'append'
这个是为啥呢, 谢谢老板 koreabao 发表于 2022-2-1 19:21
返回None是什么意思呢?
就是squares.append这个函数不返回任何值(也就是返回None) koreabao 发表于 2022-2-1 19:27
那我这么操做出来
AttributeError: 'NoneType' object has no attribute 'append'
首先squares = squares.append(square)
squares就是None
然后又循环,因为None里没有append方法
squares.append就是None.append,报错 koreabao 发表于 2022-2-1 19:27
那我这么操做出来
AttributeError: 'NoneType' object has no attribute 'append'
说明这个函数什么也不返回 squres = []
for value in range(1, 11):
squre = value ** 2
squres.append(squre)
print(squres)
# 以下代码达到上面的效果。
squres =
print(squres) 名字只有七个字 发表于 2022-2-3 20:31
说明这个函数什么也不返回
谢谢 xiangjianshinan 发表于 2022-2-3 21:57
谢谢
页:
[1]