第二章python序列-集合

集合

1.创建集合

(1)直接将一个集合对象赋给变量

>>> a={3,5}
>>> a
{3, 5}

(2)用set()

>>> a=set(range(8,14))
>>> a
{8, 9, 10, 11, 12, 13}
>>> b=set([0,1,2,3,0,1,2,3,7,8])
>>> b
{0, 1, 2, 3, 7, 8}
>>> x=set()   #空集合

2.访问集合元素

(1)in 或 not in

>>> a
{8, 9, 10, 11, 12, 13}
>>> 11 in a
True
>>> 0 in a
False
>>> 13 not in a
False
>>> 17 not in a
True

(2)使用for语句

>>> a
{8, 9, 10, 11, 12, 13}
>>> for data in a:
    print(data)

    
8
9
10
11
12
13

3.添加、删除集合元素

(1)集合对象的add()方法:添加一个元素

>>> a
{8, 9, 10, 11, 12, 13}
>>> a.add(2)
>>> a
{2, 8, 9, 10, 11, 12, 13}

(2)集合对象的update()方法:添加多个元素

>>> a
{2, 8, 9, 10, 11, 12, 13}
>>> b={0,1,3,4,2}
>>> b
{0, 1, 2, 3, 4}
>>> a.update(b)
>>> a
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> b.update(a)
>>> b
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}

(3)集合对象的discard()方法、remove()方法和pop方法:删除一个元素

discard() 方法用于移除指定的集合元素。

该方法不同于 remove() 方法,因为 remove() 方法在移除一个不存在的元素时会发生错误,而 discard() 方法不会。

>>> a
{1, 2, 4, 8, 9, 10, 11, 12, 13}
>>> a.discard(4)
>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> a.discard(0)
>>> a
{1, 2, 8, 9, 10, 11, 12, 13}

remove()删除指定元素

>>> a
{1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a.remove(3)
>>> a
{1, 2, 4, 8, 9, 10, 11, 12, 13}
>>> a.remove(0)  #删除不存在的元素就会抛出异常
Traceback (most recent call last):
  File "", line 1, in 
    a.remove(0)  #删除不存在的元素就会抛出异常
KeyError: 0

pop()删除并返回一个元素

>>> a
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a.pop()  #删除并返回一个元素
0
>>> a
{1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a.pop(2)  #pop方法不接收参数
Traceback (most recent call last):
  File "", line 1, in 
    a.pop(2)  #pop方法不接收参数
TypeError: set.pop() takes no arguments (1 given)

(4)集合对象的clear()方法:删除集合中所有元素。

>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> a.clear()
>>> a
set()

4.集合运算

(1)并集

>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> b
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a|b  #并集
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}

(2)交集

>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> b
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a&b  #交集
{1, 2, 8, 9, 10, 11, 12, 13}

(3)差集

>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> b
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a-b
set()
>>> b-a
{0, 3, 4}

(4)对称差集

>>> a
{1, 2, 8, 9, 10, 11, 12, 13}
>>> b
{0, 1, 2, 3, 4, 8, 9, 10, 11, 12, 13}
>>> a^b
{0, 3, 4}

你可能感兴趣的:(python,python)