鱼C论坛

 找回密码
 立即注册
查看: 2641|回复: 4

[已解决]clear() 方法的使用

[复制链接]
发表于 2018-2-25 15:08:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
>>> list1 = [1, [1, 2, ['小甲鱼']], 3, 5, 8, 13, 18]
>>> list3 = list1.clear()
>>> list3
>>> list1
[]

>>> print(list3)
None
为什么不是list3是一个空列表而list1是原列表呢?
最佳答案
2018-2-26 11:02:59
屏幕快照 2018-02-25 下午9.57.00.png

首先咱们先来做个实验,如图,如果我不给list1.clear()赋值,print出来的list1就是一个空列表,这说明,clear函数直接作用在了list1上,这跟你有没有list3都没关系。

然后知道来这点,咱们来说为什么list3返回一个none,就向之前说的,clear函数直接作用在了list1上面,所以你可以直接输出list1就可以得到你想要的list1,这个函数并不会返回一个值给list3,这就是为什么list3是none了,你可以理解为这里有没有list3不会影响clear函数对list1的操作。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-25 15:11:57 | 显示全部楼层
list1.clear()是一个事件,list3并不是你理解的一个列表,而是一个事件,这个事件就是将list1清空,所以list1是空列表,而list3是空值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-25 20:56:20 | 显示全部楼层
list1.clear()是清空list1,此方法没有返回值,或称返回值为None。所以list3赋值为None
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-25 22:20:38 From FishC Mobile | 显示全部楼层
单单一个clear()不返回任何值,所以list3就什么都不是。clear()确实是把list1清空了,所以list1就变成一个空列表了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-26 11:02:59 | 显示全部楼层    本楼为最佳答案   
屏幕快照 2018-02-25 下午9.57.00.png

首先咱们先来做个实验,如图,如果我不给list1.clear()赋值,print出来的list1就是一个空列表,这说明,clear函数直接作用在了list1上,这跟你有没有list3都没关系。

然后知道来这点,咱们来说为什么list3返回一个none,就向之前说的,clear函数直接作用在了list1上面,所以你可以直接输出list1就可以得到你想要的list1,这个函数并不会返回一个值给list3,这就是为什么list3是none了,你可以理解为这里有没有list3不会影响clear函数对list1的操作。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-28 23:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表