python字典clear方法详解

clear功能描述

python字典的clear方法用于删除字典内全部的元素,该方法不需要传入参数,也没有返回值,clear方法没有创建新的字典,而是在原字典基础上进行修改。

语法

clear方法语法如下

dict.clear()

参数

clear方法不需要传入参数

返回值

clear方法没有返回值,在python中,函数或方法没有返回值即意味着返回None

示例代码

dic = {
    '小明': 98
}
dic.clear()
print(dic)

使用clear方法后,字典dic变成了空字典,有人可能会问,这种清空字典的方法和直接将空字典赋值给变量dic有什么区别

dic = {
    '小明': 98
}
dic = {}
print(dic)

程序最终输出的结果同样是{},dic 变成了空字典。两种方式,变量dic都变成了空字典,但意义不同,使用clear方法,字典在内存中的地址没有发生变化,但是第二种方法,变量dic指向了一个新的空字典,原来的字典被垃圾回收机制回收了,我们可以通过输出变量的内存地址来验证

dic1 = {
    '小明': 98
}
print("使用clear方法前,dic1内存地址为", id(dic1))
dic1.clear()
print(dic1)
print("使用clear方法后,dic1内存地址为", id(dic1))

print("\n\n分割线"+"*"*30 + "\n"*2)

dic2 = {
    '小明': 98
}
print("赋值空字典之前,dic1内存地址为", id(dic2))
dic2 = {}
print(dic2)
print("赋值空字典之后,dic1内存地址为", id(dic2))

程序输出结果为

使用clear方法前,dic1内存地址为 4352796640
{}
使用clear方法后,dic1内存地址为 4352796640


分割线******************************


赋值空字典之前,dic1内存地址为 4729716312
{}
赋值空字典之后,dic1内存地址为 4729716168

clear是清空字典,而将一个空字典赋值给变量,并不是清空,只是修改了变量的引用而已。

扫描关注, 与我技术互动

QQ交流群: 211426309

加入知识星球, 每天收获更多精彩内容

分享日常研究的python技术和遇到的问题及解决方案