Python列表List和集合set的区别

  1. 元素重复性

    • 列表可以包含重复的元素。
    • 集合不允许重复的元素,自动去重。
  2. 元素顺序

    • 列表中的元素是有序的,即元素的插入顺序会被保留。
    • 集合中的元素是无序的,没有固定顺序,每次迭代可能会得到不同的元素顺序。
  3. 性能

    • 列表的查找、插入和删除操作通常比集合慢,因为列表是线性结构。
    • 集合的查找、插入和删除操作通常更快,因为集合是基于哈希表实现的。
  4. 可变性

    • 列表是可变的,可以修改列表中的元素。
    • 集合也是可变的,可以添加或删除元素。
  5. 操作

    • 列表支持索引操作,可以通过索引访问特定位置的元素。
    • 集合不支持索引操作,因为元素是无序的。
  6. 用途

    • 列表通常用于存储有序的数据集合,需要通过索引访问元素或需要存储重复元素。
    • 集合通常用于存储无序的唯一数据集合,用于快速查找、插入和删除操作。
  7. 语法

    • 列表使用方括号 [] 定义,例如:my_list = [1, 2, 3]
    • 集合使用花括号 {} 或 set() 函数定义,例如:my_set = {1, 2, 3} 或 my_set = set([1, 2, 3])

示例代码

# 列表示例
my_list = [1, 2, 2, 3, 4]
print(my_list)  # 输出: [1, 2, 2, 3, 4]

# 集合示例
my_set = {1, 2, 3, 4}
print(my_set)  # 输出可能是: {1, 2, 3, 4},注意元素顺序可能不同

# 集合去重
my_set_with_duplicates = {1, 2, 2, 3, 4}
print(my_set_with_duplicates)  # 输出: {1, 2, 3, 4}

# 列表和集合的查找速度比较
# 列表查找
if 2 in my_list:
    print("Found in list")

# 集合查找
if 2 in my_set:
    print("Found in set")

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值