python集合的clear方法会移除集合中的所有元素,从作用上看,为变量赋值一个空集合与使用clear方法清空集合有这相同的功效,但clear方法没有产生新的集合,而是修改了原有集合;赋值一个新的空集合,原有的集合对象就不存在了。
set.clear()
无
clear方法没有返回值,它原地修改了集合
code_language = {'java', 'c++'}
code_language.clear()
print(code_language) # set()
clear方法没有创建新的集合,这与给变量赋值一个空集合是不同的
code_language = {'java', 'c++'}
print(f"集合内存地址{id(code_language)}")
code_language.clear()
print(f"使用clear方法后,集合内存地址{id(code_language)}")
code_language = set()
print(f"为变量code_language赋值空集合后,集合内存地址{id(code_language)}")
运行程序,得到结果
集合内存地址4727453504
使用clear方法后,集合内存地址4727453504
为变量code_language赋值空集合后,集合内存地址4454568000
通过三次输出code_language的内存地址可以得到结论,clear方法原地修改集合,不创建新的集合,而为变量code_language赋值一个空集合,这个空的集合地址与原集合地址是不同的,从最终功效上看,两种方法都实现了清空集合的目的,但clear保留了原集合。
QQ交流群: 211426309