python按照个数排序
时间: 2023-06-02 17:02:22 浏览: 49
以下是一个示例代码,它可以将列表中的元素按照出现次数进行排序:
```python
from collections import Counter
def sort_by_count(lst):
counts = Counter(lst)
return sorted(lst, key=lambda x: counts[x], reverse=True)
# 示例
lst = [1, 2, 3, 2, 1, 2, 3, 4, 5, 4]
sorted_lst = sort_by_count(lst)
print(sorted_lst) # 输出 [2, 2, 2, 1, 1, 3, 3, 4, 4, 5]
```
这个示例中,使用了 Python 标准库中的 `collections.Counter` 类,它可以方便地统计列表中各元素的出现次数。然后,使用 `sorted` 函数对列表进行排序,排序关键字是元素在 `Counter` 对象中的出现次数,从大到小排序。最后返回排序后的列表。
相关问题
python10个数排序
下面是一个简单的 Python 代码示例,可以将输入的 10 个数字进行排序:
```python
numbers = [] # 用于存储输入的数字
# 循环读入 10 个数字
for i in range(10):
num = int(input(f"请输入第 {i+1} 个数字:"))
numbers.append(num)
# 使用 sort() 方法排序
numbers.sort()
# 输出排序后的结果
print("排序后的结果:")
for num in numbers:
print(num, end=" ")
```
这段代码首先定义了一个空列表 `numbers`,用于存储接下来输入的 10 个数字。然后通过一个循环,依次读入这 10 个数字,并将它们添加到 `numbers` 列表中。接下来使用 `sort()` 方法对 `numbers` 列表进行排序,最后循环输出排序后的结果。
python三个数排序
可以使用 Python 中的列表和 sort() 方法来对三个数进行排序。以下是一个示例代码:
```
# 输入三个数
num1 = float(input("请输入第一个数:"))
num2 = float(input("请输入第二个数:"))
num3 = float(input("请输入第三个数:"))
# 将三个数存入列表中
nums = [num1, num2, num3]
# 使用 sort() 方法对列表进行排序
nums.sort()
# 输出排序后的结果
print("排序后的结果为:", nums)
```
注:这里假设输入的三个数都是浮点数,如果是整数可以将 float() 转换函数去掉。