翼度科技»论坛 编程开发 python 查看内容

Python进行数组的排序、倒序、截取方式

5

主题

5

帖子

15

积分

新手上路

Rank: 1

积分
15
Python进行数组的排序、倒序、截取

这里涉及到的场景,是对无序数组,需要进行有序排序的场景;
也可以是对数组内容,进行头部取舍的场景;
结合起来就可以是对数组排序后,进行数组的取舍
排序是对数组中进行双冒号 :: 操作,取舍是对数组进行单冒号 : 操作
根据上面的介绍,我们其实就能进行一些操作
如:取前N位元素、取后N位元素、取最大的N位元素、取最小的N位元素等等
代码和结果如下:
  1. arr = [1, 9, 5, 73, 1, 4, 56, 2, 6, 10]
  2. # 数组倒序
  3. print(arr[::-1])
  4. # 输出:[10, 6, 2, 56, 4, 1, 73, 5, 9, 1]

  5. # 数组排序
  6. print(sorted(arr))
  7. # 输出:[1, 1, 2, 4, 5, 6, 9, 10, 56, 73]


  8. # 取前3位元素
  9. print(arr[:3])
  10. # 输出:[1, 9, 5]

  11. # 取除了后3位的元素
  12. print(arr[:-3])
  13. # 输出:[1, 9, 5, 73, 1, 4, 56]

  14. # 取后3位的元素
  15. print(arr[-3:])
  16. # 输出:[2, 6, 10]

  17. # 取除了前3位的元素
  18. print(arr[3:])
  19. # 输出:[73, 1, 4, 56, 2, 6, 10]

  20. # 排序后、倒序、取前3位元素(取最大的3位元素)
  21. print(sorted(arr)[::-1][:3])
  22. # 输出:[73, 56, 10]
复制代码
以上示例用法,其实搭配起来使用可以有很多好处,不过还是要根据大家的实际场景进行使用

python排序的几种方式


通过sort()可以快速实现数组的排序
  1. a=[2,3,1]
  2. a.sort()
  3. print(a)
复制代码
打印返回结果:
  1. [1, 2, 3]
复制代码
如果不知道有sort()函数或者一些特殊场景需要排序

如果解决呢,冒泡排序还是一个很好的算法
在计算性价比的贪心算法时也可以用到
  1. #Python学习交流群:531509025
  2. a=[2,3,1]
  3. for i in range(len(a)):
  4.     for j in range(i+1,(len(a))):
  5.         if a[i]>a[j]:
  6.             a[i],a[j]=a[j],a[i]
  7. print(a)
复制代码
打印返回结果:
  1. [1, 2, 3]
复制代码
数组list转成集合set时会默认从小到大排序

这里时候再取出来就可以了
  1. a=[2,3,1]
  2. a=set(a)
  3. b=[]
  4. for i in a:
  5.     b.append(i)
  6. print(b)
复制代码
打印返回结果:
  1. [1, 2, 3]
复制代码
总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

来源:https://www.jb51.net/python/316175okg.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

举报 回复 使用道具