PythonList排序

import bisect

# insort等价于insort_right。
# 插入x,保持排序。如果x已经在List中存在,则在x的右侧插入。
# 如果List是降序,结果不正确,插入的x的位置可能是List的最左侧(x < 中点值)或最右侧(x >= 中点值)。
# bisect_right和bisect_left不会实际插入,返回将要插入的位置。

# CASE 1
print("CASE 1 ====================")
data = [13, 3, 9, 5, 11, 1]
# 降序排序data
data.sort(reverse=False)
print(data)

index = bisect.bisect_right(data, 5.0)
print(index)
bisect.insort(data, 5.0)
print(data)
index = bisect.bisect_right(data, 4.9)
print(index)
bisect.insort(data, 4.9)
print(data)
index = bisect.bisect_left(data, 3.0)
print(index)
bisect.insort_left(data, 3.0)
print(data)

# CASE 2
print("CASE 2 ====================")
data = [13, 3, 9, 5, 11, 1]

# 降序排序data
data.sort(reverse=True)
print(data)

index = bisect.bisect_right(data, 5.0)
print(index)
bisect.insort(data, 5.0)
print(data)
index = bisect.bisect_right(data, 4.9)
print(index)
bisect.insort(data, 4.9)
print(data)
index = bisect.bisect_right(data, 3.0)
print(index)
bisect.insort_left(data, 3.0)
print(data)

运行结果:

创新互联是一家专注于网站制作、成都网站制作与策划设计,翁牛特网站建设哪家好?创新互联做网站,专注于网站建设十年,网设计领域的专业建站公司;建站业务涵盖:翁牛特等地区。翁牛特做网站价格咨询:028-86922220

CASE 1 ====================
[1, 3, 5, 9, 11, 13]
3
[1, 3, 5, 5.0, 9, 11, 13]
2
[1, 3, 4.9, 5, 5.0, 9, 11, 13]
1
[1, 3.0, 3, 4.9, 5, 5.0, 9, 11, 13]
CASE 2 ====================
[13, 11, 9, 5, 3, 1]
6
[13, 11, 9, 5, 3, 1, 5.0]
0
[4.9, 13, 11, 9, 5, 3, 1, 5.0]
0
[3.0, 4.9, 13, 11, 9, 5, 3, 1, 5.0]

分享文章:PythonList排序
URL标题:http://bzwzjz.com/article/ppjopj.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆网站制作 成都网站设计 企业网站建设 成都网站设计 教育网站设计方案 响应式网站设计 网站建设 达州网站设计 成都网站制作 成都网站建设 手机网站设计 成都网站建设公司 定制网站设计 移动网站建设 温江网站设计 营销型网站建设 攀枝花网站设计 重庆电商网站建设 专业网站设计 外贸网站设计方案 四川成都网站制作 成都网站设计