Python简单处理坐标排序问题示例

yipeiwu_com7年前Python基础

本文实例讲述了Python简单处理坐标排序问题。分享给大家供大家参考,具体如下:

前面一篇学了列表的冒泡排序算法,这一节利用此算法处理一下坐标排序的问题

我实现的功能是从上到下,从左到右的排序坐标点

# -*- coding:utf-8 -*-
#! python2
a=[(4,5),(2,4),(3,4),(1,1),(2,5)]
print a
def zuobiaopaixu(a):
  b=[]
  l=len(a)
  for i in range(l):
    j=i
    for j in range(l):
      if (a[i][0]<a[j][0]):
        a[i],a[j]=a[j],a[i]
      if (a[i][1]>a[j][1]):
        a[i],a[j]=a[j],a[i]
  for k in range(len(a)):
    b.append(a[k])
  return b
b=zuobiaopaixu(a)
print b

运行结果:

[(4, 5), (2, 4), (3, 4), (1, 1), (2, 5)]
[(2, 5), (4, 5), (2, 4), (3, 4), (1, 1)]

PS:这里再为大家推荐一款关于排序的演示工具供大家参考:

在线动画演示插入/选择/冒泡/归并/希尔/快速排序算法过程工具:
http://tools.jb51.net/aideddesign/paixu_ys

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python列表(list)操作技巧总结》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程

希望本文所述对大家Python程序设计有所帮助。

相关文章

pandas dataframe添加表格框线输出的方法

pandas dataframe添加表格框线输出的方法

将dataframe添加到texttable里面,实现格式化输出。 data=[{"name":"Amay","age":20,"result":80}, {"name":"T...

Python代码太长换行的实现

末尾加 \ 或 Enter ,回车使用看情况,\通用。 如果是print字符串换行,可以加三个单引号或三个双引号,但是这样回车换行会保留,若要呈现无换行的字符串,引号中每行末尾可加 \...

python函数返回多个值的示例方法

python可以返回多个值,确实挺方便函数里的return只能返回一个值,但是返回类型是没是限制的因此,我们可以“返回一个 tuple类型,来间接达到返回多个值”。例子是我在robot...

浅谈Python 对象内存占用

一切皆是对象 在 Python 一切皆是对象,包括所有类型的常量与变量,整型,布尔型,甚至函数。 参见stackoverflow上的一个问题 Is everything an objec...

Pytorch实现基于CharRNN的文本分类与生成示例

Pytorch实现基于CharRNN的文本分类与生成示例

1 简介 本篇主要介绍使用pytorch实现基于CharRNN来进行文本分类与内容生成所需要的相关知识,并最终给出完整的实现代码。 2 相关API的说明 pytorch框架中每种网络模型...