python 中 set 的排序问题?

发布网友 发布时间:2022-04-23 21:24

我来回答

2个回答

懂视网 时间:2022-04-29 17:29

Python中对集合排序可以将集合转换为列表,然后通过list.sort()函数将列表排序,排序结果就是集合的排序结果。

集合-->列表-->list sort()

集合(set)是Python中一种重要的数据类型,表示一组各不相同元素的无序集合,其主要应用于重复元素消除及关系测试等 。

集合在Python内部通过哈希表实现,其本征无序,输出时所显示的顺序具有随机性,且与运行环境相关。

sort()函数用于对原列表进行排序,如果指定参数,则使用比较函数指定的比较函数。

sort()方法语法:

list.sort(cmp=None, key=None, reverse=False)

参数

cmp -- 可选参数, 如果指定了该参数会使用该参数的方法进行排序。

key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

reverse -- 排序规则,reverse = True 降序, reverse = False 升序(默认)。

返回值:

该方法没有返回值,但是会对列表的对象进行排序。

以下实例展示了sort()函数的使用方法:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

aList = [123, 'Google', 'Runoob', 'Taobao', ''];
aList.sort();
print "List : ", aList

输出结果如下:

List : [123, '', 'Google', 'Runoob', 'Taobao']

更多Python相关技术文章,请访问Python教程栏目进行学习!

热心网友 时间:2022-04-29 14:37

set 本身根据定义就是无序的,具体的输出顺序跟实现相关。
方法1 为什么是有序的你可以认为这是一个实现的巧合,实际代码中不应该依赖这个特性(因为别的实现可能不一致,甚至 Python 官方的时候随着版本都有可能变化)。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com