python——组织列表

(1)使用方法sort()对列表进行永久性排序 

  >>> cars = ['toyota','subaru', 'bench','bmw', 'audi']
  >>> cars.sort()
  >>> cars
    ['audi', 'bench', 'bmw', 'subaru', 'toyota']
  >>> cars.sort(reverse = True)
  >>> cars
    ['toyota', 'subaru', 'bmw', 'bench', 'audi']

       如程序结果显示:sort()永久性的修改了列表元素的排列顺序,再也无法回到原来的排列顺序。也可以按字母顺序相反的顺序排列列表元素,只需向sort()方法传递参数reverse = True

(2)使用函数sorted()对列表进行临时排序

  >>> sorted(cars)
    ['audi', 'bench', 'bmw', 'subaru', 'toyota']
  >>> cars
    ['toyota', 'subaru', 'bmw', 'bench', 'audi']

  接着(1)的程序,对cars使用临时排序,cars的顺序没有变化

(3)倒着输出列表reverse()函数

  >>> cars.reverse()
  >>> cars
    ['audi', 'bench', 'bmw', 'subaru', 'toyota']

  >>> cars.reverse()
  >>> cars
    ['toyota', 'subaru', 'bmw', 'bench', 'audi']

  接着(2)的程序,reverse()函数可永久性的修改列表元素的排列顺序,但可随时恢复到原来的排序,只需要对列表再次调用reverse()即可。

(4)reversed()函数 

  >>> cars = ['audi','bmw','toyota','bench','subaru']
  >>> reversed(cars)
    <list_reverseiterator object at 0x029F1BB0>
  >>> list(reversed(cars))
    ['subaru', 'bench', 'toyota', 'bmw', 'audi']
  >>> cars
    ['audi', 'bmw', 'toyota', 'bench', 'subaru']

  reversed()函数区别于reverse()函数,如程序所示,reversed()函数返回的是一个对象,前面需要加一个list()函数才可以转化为实际可以看的列表,reversed()只是对列表进行了临时的倒着排序,不改变原始序列。

(5)enumerate()函数

  >>> enumerate(cars)
    <enumerate object at 0x03386120>
  >>> list(enumerate(cars))
    [(0, 'toyota'), (1, 'subaru'), (2, 'bmw'), (3, 'bench'), (4, 'audi')]

  接(4)的程序,如程序所示,enumerate()函数返回的也是一个对象,前面需要加一个list()函数才可以转化为实际可以看的列表,它返回的是每个元素的索引值及其元素的值。

(6)打包函数zip()

  >>> a = [0,1,2,3,4,5,9]
  >>> b = [3,5,7.8,10,22]
  >>> zip(a,b)
    <zip object at 0x033A1058>
  >>> list(zip(a,b))
    [(0, 3), (1, 5), (2, 7.8), (3, 10), (4, 22)]

  如程序所示,zip()函数返回的也是一个对象,前面需要加一个list()函数才可以转化为实际可以看的列表,它返回的是两个列表被捆绑在一块的值。

猜你喜欢

转载自www.cnblogs.com/carlber/p/9386348.html
今日推荐