python set模块

Posted cloud&ken

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python set模块相关的知识,希望对你有一定的参考价值。

python set模块

觉得有用的话,欢迎一起讨论相互学习~


我的微博我的github我的B站

感谢莫烦

set模块基本功能

  • Set 最主要的功能就是寻找一个句子或者一个 list 当中不同的元素.
char_list = [\'a\', \'b\', \'c\', \'c\', \'d\', \'d\', \'d\']

sentence = \'Welcome Back to This Tutorial\'

print(set(char_list))
# {\'b\', \'d\', \'a\', \'c\'}

print(set(sentence))
# {\'l\', \'m\', \'a\', \'c\', \'t\', \'r\', \'s\', \' \', \'o\', \'W\', \'T\', \'B\', \'i\', \'e\', \'u\', \'h\', \'k\'}

print(set(char_list+ list(sentence)))
# {\'l\', \'m\', \'a\', \'c\', \'t\', \'r\', \'s\', \' \', \'d\', \'o\', \'W\', \'T\', \'B\', \'i\', \'e\', \'k\', \'h\', \'u\', \'b\'}
  • 值得注意的是,sentence是一个字符串,但是可不是将其作为单个单词进行分割,而是将其分割成了每一个字符。

添加元素

  • 定义好一个 set 之后我们还可以对其添加需要的元素, 使用 add 就能添加某个元素. 但是不是每一个东西都能添加, 比如一个列表. 添加只能添加单个元素而不是列表这种复合对象
unique_char = set(char_list)
unique_char.add(\'x\')
# unique_char.add([\'y\', \'z\']) this is wrong
print(unique_char)

# {\'x\', \'b\', \'d\', \'c\', \'a\'}

清除元素和清空set

  • 清除一个元素可以用 remove 或者 discard, 而清除全部可以用 clear.
unique_char.remove(\'x\')
print(unique_char)
# {\'b\', \'d\', \'c\', \'a\'}

unique_char.discard(\'d\')
print(unique_char)
# {\'b\', \'c\', \'a\'}

unique_char.clear()
print(unique_char)
# set()

筛选操作

  • a.difference(b) 返回a中有的但是b中没有的元素
  • a.intersection(b) 返回a和b中都有的元素
unique_char = set(char_list)
print(unique_char.difference({\'a\', \'e\', \'i\'}))
# {\'b\', \'d\', \'c\'}

print(unique_char.intersection({\'a\', \'e\', \'i\'}))
# {\'a\'}

以上是关于python set模块的主要内容,如果未能解决你的问题,请参考以下文章

django.core.exceptions.ImproperlyConfigured: Requested setting DEFAULT_INDEX_TABLESPACE的解决办法(转)(代码片段

Python - 模块

Python练习册 第 0013 题: 用 Python 写一个爬图片的程序,爬 这个链接里的日本妹子图片 :-),(http://tieba.baidu.com/p/2166231880)(代码片段

python之模块和包

python中的模块

Python 常用模块学习