求助大神两个问题(不相关):append和变量引用
1, >>> a =>>> a
>>> a.append(9)
>>> a
>>> a.append(1)
>>> a
>>> b = a.append(2)
>>> b
>>> b
>>> type(b)
<class 'NoneType'>
为什么a.append赋值给b,b是NoneType呢?
2,>>> a =
>>> b = a
>>> a =
>>> b
>>> a =
>>> b = a
>>> a = 5
>>> b
一开始a与b都是数值的引用,a is b。按小甲鱼教学一个变都要变,但按照上述实例操作,局部元素赋值不会生成新的内存(a is b),整体赋值生成新的内存(a is not b)。底层逻辑是什么啊? 1、因为append方法没有返回值 所以b是无类型
2、
>>> a =
>>> b = a
a,b全部指向列表
但是你重新 a = , a就会重新指向 列表
因为 python 任何函数方法都是有返回结果的,你这里:
b = a.append(2)
中的:
a.append(2)
返回的结果是 "None" ,因为当函数没有返回值时,便会返回 "None" !
所以赋值给 b 之后,b 的类型当然就是没有类型 "NoneType" 啦! 懂了吗?不懂可以再问!懂了就给个好评呗!!!
{:10_257:}{:10_297:}{:10_281:}{:10_298:}
打字不易!请给个好评!!!
兄弟!给个好评!求求了!!!
{:10_254:}{:10_254:}{:10_254:}{:10_254:} 第1个问题,a.append()是调用一个方法给列表中添加元素,没有生成任何值,只是一个操作,不是给变量赋值用的,所以返回nonetype 第二个问题我也不知道为啥,问小甲鱼吧{:10_266:}{:10_269:}{:10_247:} 尽然忘记解第二题了{:10_292:} python爱好者. 发表于 2022-2-23 16:03
尽然忘记解第二题了
第二题讲解,
答案部分第 1 题!
页:
[1]