关于python里面的set,set之后的集合元素是如何让排列的

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于python里面的set,set之后的集合元素是如何让排列的相关的知识,希望对你有一定的参考价值。

RT,看下面的例子,
>>>set('cheeseshop')
set(['c','e','h','o','p','s'])
>>>set('shop')
set(['h','s','o','p'])
>>> set('01234')
set(['1', '0', '3', '2', '4'])
>>> set('1234')
set(['1', '3', '2', '4'])
这个怎么排的啊??

set是无序集合,python不保证其中元素的次序。打印结果取决于其内部存储结构和输出方式。
你打个长的就知道了
>>> set('012345678910')
set(['1', '0', '3', '2', '5', '4', '7', '6', '9', '8'])
说明它是按类似二维数组的方式保存的,先把重复的元素剔除,然后把元素按21436587的顺序存进二维数组
参考技术A python里面set是定义集合的
集合是非重复的,所以set('cheeseshop')的输出时 cehops
集合是无序的,所以 set('01234')的输出时10324(随机)
改用List列表、或则tuple元组类型就可以了。
参考技术B set没有排序,但是list有啊 可以利用list的排序来对set进行排序:
s = set('1234')
l = list(s)
l.sort()
print(l)
参考技术C set没有排序,但是list有啊 可以利用list的排序来对set进行排序:
s = set('1234')
l = list(s)
l.sort()
参考技术D Sets 模块提供了构建和处理独立对象的无序集合的类。该模块的通常使用包括成员测试、删除序列中的雍余对象,以及像求交、求并、作差和均差(symmetric difference)这些数学运算

参考资料:http://blog.csdn.net/sharkw/archive/2007/12/14/1937334.aspx

set 集合

set集合是python的一个基本数据类型. 一般不是很常用. set中的元素是不重复的.无序的.里面的元素必须是可hash的(int, str, tuple,bool), 我们可以这样来记. set就是dict类型的数据但是不保存value, 只保存key. set也用{}表示 

注意: set集合中的元素必须是可hash的, 但是set本身是不可hash得. set是可变的. 

技术分享图片

set中的元素是不重复的, 且无序的. 

技术分享图片

使用这个特性.我们可以使用set来去掉重复 

技术分享图片

 

set集合增删改查

1. 增加

技术分享图片

2. 删除

技术分享图片

3. 修改

技术分享图片

4. 查询

技术分享图片

 

以上是关于关于python里面的set,set之后的集合元素是如何让排列的的主要内容,如果未能解决你的问题,请参考以下文章

Python集合

python--基础数据类型 set集合

关于set

python基础(集合,文件操作)

9python_set(集合)

python-集合set