Python基础复习
2024-01-08 17:47:37
可变数据类型和不可变数据类型
基本数据类型(整型(int)字符串(string),列表(list),集合(set),字典(dict),元祖(tuple)
可变数据类型(列表,字典,集合)
不可变数据类型(整型,字符串,元祖)
集合和元祖的区别:
- 元素的唯一性:
- 集合:集合中的元素是唯一的,也就是说,集合会自动去除重复的元素。
- 元组:元组中可以包含重复的元素,元组保存元素的顺序和重复状态。
- 可变性:
- 集合:集合是可变的,这意味着你可以在创建后添加或删除元素。
- 元组:元组是不可变的,一旦创建,其内的元素不可更改。
- 元素的顺序:
- 集合:集合是无序的,这意味着集合中的元素没有固定的顺序,它们可能每次呈现时都有不同的顺序。
- 元组:元组是有序的,元素的顺序一旦定义,在元组的整个生命周期中都不会改变。
语法结构:
- 集合:集合用大括号
{}
创建,例如my_set = {1, 2, 3}
。 - 元组:元组用小括号
()
创建,例如my_tuple = (1, 2, 3)
。如果元组中只有一个元素,需要在元素后面添加逗号,如(1,)
,否则它不会被识别为元组。
深浅拷贝
在进行对象是否相等比较的时候我们可以用 is
和 ==
-
is: 比较两个对象的引用是否相同,即 它们的id 是否一样
-
== : 比较两个对象的值是否相同。
-
浅拷贝: 拷贝的是对象的引用,如果原对象改变,相应的拷贝对象也会发生改变
import copy original_list = [[1, 2, 3], [4, 5, 6]] shallow_copied_list = copy.copy(original_list) # 修改原始列表中的一个子列表的元素 original_list[0][0] = 'X' # 输出结果 print(shallow_copied_list) # 结果会显示 'X',因为子列表是通过引用拷贝的
-
深拷贝: 拷贝对象中的每个元素,拷贝对象和原有对象不在有关系,两个是独立的对
import copy original_list = [[1, 2, 3], [4, 5, 6]] deep_copied_list = copy.deepcopy(original_list) # 修改原始列表中的一个子列表的元素 original_list[0][0] = 'X' # 输出结果 print(deep_copied_list) # 结果不会显示 'X',因为进行了深拷贝
文章来源:https://blog.csdn.net/Ban_a/article/details/135461354
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!