Python学习第二天--数据类型--集合

集合:
1、 标志是{ };语法:变量名 = {val1, val2, val3, …}

a = {"index", "sxvdf", "knk"}
print(type(a))
print(a)
<class 'set'>
{'index', 'sxvdf', 'knk'}

2、特点:是一个无序不重复的数据集合,可以利用这个特点去重

list1 = [1, 2, 3, 6, 3, 2, 1]
a = set(list1)
print(type(a))
print(a)
<class 'set'>
{1, 2, 3, 6}

3、 空集合创建
3.1、创建空集合必须使用 set(),不能直接 = {}

a = set()
print(type(a))
print(a)
<class 'set'>
set()

错误示范 = {}:

a = {}
print(type(a))
print(a)

# dict是数据类型--字典,它与集合一样使用大括号,所以创建空集合需要使用set()
<class 'dict'>
{}

4、 可以使用集合的不重复特性去重(见特点2)

5、快速创建集合的方法:set(需要转换的变量/值)

   5.1、可以直接将字符串转为集合,并去重
a = set("abcde123333")
print(type(a))
print(a)
<class 'set'>
{'3', '1', 'a', 'd', '2', 'c', 'e', 'b'}
 5.2、将变量转为集合
fruits = ['banana', 'apple', 'mango']
# name = (9, 10, 34, 'app')
# 列表转集合
a = set(fruits)
print(type(a))
print(a)
<class 'set'>
{'banana', 'mango', 'apple'}
name = (9, 10, 34, 'app')
# 元组转集合
a = set(name)
print(type(a))
print(a)
<class 'set'>
{9, 10, 34, 'app'}

6、集合的运算
“-”减号

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print(a-b)  # a和b的差集 打印a中存在,但b中不存在的元素,反过即打印b中存在的a中不存在的
{'a', 'b'}

分隔符号“|”

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print(b | a)  # a和b的并集 即打印a和b中不重复的所有元素
{'b', 'a', 12, 13, 'd', 'c', 'f'}

“&”符号

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print(b & a)  # a和b的交集 即打印a和b中都存在的元素
{'c', 12, 13}

“^”符号

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print(b ^ a)  # a和b中不同时存在的元素
{'b', 'a', 'd', 'f'}

in的使用

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print("i" in a)  # 用in关键字判定元素"i"是否在a集合内,在返回true,不在false
False

a = {'a', 'b', 'c', 12, 13}
b = {'c', 12, 13, 'd', 'f'}
print("a" in a)  # 用in关键字判定元素"a"是否在a集合内,在返回true,不在false

True
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值