您的位置:首页 > 编程语言 > Python开发

python set集合的特点,功能and常见方法

2016-07-15 21:07 609 查看
python set集合:

特点:

1》无序

2》元素不重复

功能:

1》关系测试

2》去重

常见方法:

1》集合定义

>>> s={2,3,4}

>>> type(s)

<type 'set'>

>>> s

set([2, 3, 4])

>>> s={1,2,3,2,2,1}#自动去重(集合中的元素不重复)

>>> s
set([1, 2, 3])

>>> s={1,2,3}#可以通过这样的形式生成一个非空集合

>>> s

set([1, 2, 3])

如何生成一个空集合呢?

>>> s={}#这样做生成的是空字典,并不是空集合

>>> s

{}

>>> type(s)

<type 'dict'>

可以这样生成空集合

>>> s=set([])#将空列表转化成空集合

>>> s

set([])

>>> s=set(())#也可以将空元组转化成空集合

>>> s

set([])

2》将列表或元组转换成集合

>>> l=range(10)

>>> l

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> s=set(l)#将列表转化成集合

>>> s

set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

>>> l

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> l[0]#列表有序,通过下标访问元素

0

>>> s[0]#集合无序,不支持下标访问

Traceback (most recent call last):

  File "<pyshell#33>", line 1, in <module>

    s[0]

TypeError: 'set' object does not support indexing

>>> t=(1,2,3,4,3,2)

>>> s=set(t)#将元组转换成集合(自动去重)

set([1, 2, 3, 4])

3》add()方法

>>> l

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> l.append(9)#列表中允许存在重复元素

>>> l

[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 9]

>>> s

set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

>>> s.add(9)#添加失败(集合中元素不允许重复)

>>> s

set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

>>> s.add(10)#添加成功

>>> s

set([0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

4》pop()方法

>>> help(set.pop)

Help on method_descriptor:

pop(...)

    Remove and return an arbitrary set element.

    Raises KeyError if the set is empty.

>>> s={3,4}

>>> s

set([3, 4])

>>> s.pop()

3

>>> s.pop()

4

>>> s

set([])

>>> s.pop()

Traceback (most recent call last):

  File "<pyshell#53>", line 1, in <module>

    s.pop()
KeyError: 'pop from an empty set'

(完)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: