Python入门6(集合、序列)

本文详细介绍了Python中集合(set)的创建方式、特点以及如何访问集合中的元素。包括使用set()函数从列表或元组创建集合,利用集合的无序性和唯一性去除重复元素,并演示了如何通过len()函数、for循环以及in关键字来操作和查询集合。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

五、集合

Python 中set与dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

注意,key为不可变类型,即可哈希的值。

1、集合的创建

  • 先创建对象再添加元素
  • 在创建空集合的时候只能使用s = set(),因为s = {}创建的是空字典。

【示例1】:

basket = set()
basket.add('apple')
basket.add('banana')
print(basket) 

# {'banana', 'apple'}
  • 直接把一堆元素用花括号括起来{元素1, 元素2, …, 元素n}。
  • 重复元素在set中会被自动被过滤。

【示例2】:

basket = {'apple', 'orange', 'apple', 'pear', 'orange', 'banana'}
print(basket) 

# {'banana', 'apple', 'pear', 'orange'}
  • 使用set(value)工厂函数,把列表或元组转换成集合。

【示例3】:

a = set('abracadabra')
print(a)  
# {'r', 'b', 'd', 'c', 'a'}

b = set(("Google", "Lsgogroup", "Taobao", "Taobao"))
print(b)  
# {'Taobao', 'Lsgogroup', 'Google'}

c = set(["Google", "Lsgogroup", "Taobao", "Google"])
print(c)  
# {'Taobao', 'Lsgogroup', 'Google'}

【示例4】去掉列表中的重复元素:

lst = [0, 1, 2, 3, 4, 5, 5, 3, 1]

temp = []
for item in lst:
    if item not in temp:
        temp.append(item)

print(temp)  # [0, 1, 2, 3, 4, 5]

a = set(lst)
print(list(a))  # [0, 1, 2, 3, 4, 5]

注:)

  • 集合的两个特点:无序(unordered)和唯一(unique)
  • 由于set存储的时无序集合,所以我们不可以为集合创建索引或执行切片(slice)操作,也没有键(keys)可用来获取集合中元素的值,但是可以判断一个元素是否在集合中。

2、访问集合中的值

1)使用len()内建函数得到集合的大小

【示例5】:

s = set(['Google', 'Baidu', 'Taobao'])
print(len(s))  

# 3
2)用for逐个读取集合中的数据

【示例6】:

s = set(['Google', 'Baidu', 'Taobao'])
for item in s:
    print(item)
    
# Baidu
# Google
# Taobao
3)使用in 或not in判断某个元素是否存在于集合中

【示例7】:

s = set(['Google', 'Baidu', 'Taobao'])
print('Taobao' in s)  # True
print('Facebook' not in s)  # True

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值