Python--5 列表一个打了激素的数组

 

整数

浮点数

字符串

对象

创建列表

  方式一:创建一个普通列表

  >>>member = ['jhon', 'dog', 'pig' ]

  >>>member            

  ['jhon', 'dog', 'pig' ]

  方式二: 创建一个混合列表

  >>>mix = [1, 'fish', 3.14, [1, 2, 3]]

  方式三:创建一个空列表

  >>> empty = []

 向列表添加元素:

 append()

  >>> member.append('cat')
  >>> member
  ['jhon', 'dog', 'pig', 'cat']
  >>> len(member)
  4
  >>>member.append('fish', 'heike')
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  TypeError: append() takes exactly one argument (2 given)
 extend()

  >>> member.extend('fish','heike')
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  TypeError: extend() takes exactly one argument (2 given)


  >>> member.extend(['fish','heike'])
  >>> member
  ['jhon', 'dog', 'pig', 'cat', 'fish', 'heike']

 insert()
  >>> member.insert(1,'中关村')
  >>> member
  ['jhon', '中关村', 'dog', 'pig', 'cat', 'fish', 'heike']
从列表中获取元素

  跟数组一样,我们可以通过元素的索引直(index)从列表获取单个元素,注意,列表索引从0开始

  >>> member[0]
  'jhon'

  交换元素位置

  >>>temp = member[1]
  >>> member[0] = member[1]
  >>> member[1] = temp
  >>> member
  ['中关村', 'jhon', 'dog', 'pig', 'cat', 'fish', 'heike']

从列表中删除元素

 remove()

  >>> member.remove('pig')
  >>> member
  ['中关村', 'jhon', 'dog', 'cat', 'fish', 'heike']
  >>> member.remove('小鱼儿')
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  ValueError: list.remove(x): x not in list

   del

  >>> del member[1]
  >>> member
  ['中关村', 'dog', 'cat', 'fish', 'heike']
  >>> del member
  >>> member
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  NameError: name 'member' is not defined

 pop() 有返回值

  >>> member = ['中关村', 'dog', 'cat', 'fish', 'heike']
  >>> member.pop()
  'heike'
  >>> member.pop()
  'fish'
  >>> member
  ['中关村', 'dog', 'cat']
  >>> member.pop(1)
  'dog'
  >>> member
  ['中关村', 'cat']

列表分片(slice)

  利用索引值,每次我们可以从列表获取一个元素,每次我们可以从列表获取一个元素,但是我们总是贪心的,如果一次性需要获取多个元素,有没有办法?利用列表分片,我们可以简单的实现这个要求。

  得到原列表的拷贝

  >>> member[0:2]
  ['中关村', 'cat']

  简洁方案

  >>> member[:1]
  ['中关村']

  >>> member[1:]
  ['cat']

  >>> member[:]
  ['中关村', 'cat']

  得到原列表的拷贝

  >>> member2 = member[:]
  >>> member2
  ['中关村', 'cat']


列表的一些常用操作符

  比较操作符

  逻辑操作符

  连接操作符

  重复操作符

  成员关系操作符

 比较操作符

  >>> list1 = [123]
  >>> list2 = [234]
  >>> list1 > list2
  False
  >>> list1 = [123,456]
  >>> list2 = [234,123]
  >>> list3 = [123,456]
  >>> list1 >  list2

 逻辑操作符

  >>> (list1 < list2) and (list1 == list3)
  True
  list中的元素一个一个进行比较

  连接操作符

  >>> list4 = list1 + list2
  >>> list4
  [123, 456, 234, 123]
  list.extend()

  + 不能实现新元素的添加操作

  >>> list2 + 345
  Traceback (most recent call last):
    File "<stdin>", line 1, in <module>
  TypeError: can only concatenate list (not "int") to list

 重复操作符
  >>> list2 * 3
  [234, 123, 234, 123, 234, 123]
  >>> list2 *=3
  >>> list2
  [234, 123, 234, 123, 234, 123]
成员关系操作符 in not in

  >>> 123 in list3
  True
  >>> 'fish' not in list3
  True
  >>> 123 not in list3
  False

  列表中的列表--人为引入一层
  >>> list5 = [123, ['fish','cat'], 456]
  >>> 'fish' in list5
  False

  >>> 'fish' in list5[1]
  True
  >>> list5[1][1]
  'cat'
列表的小伙伴

  >>> dir(list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__init_subclass__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
  >>> list3.count(123)
  1
  >>> list4
  [123, 456, 234, 123]
  >>> list4.index(123)
  0
  >>> list4.index(123, 1, 4)
  3

  >>> list4.reverse()
  >>> list4
  [123, 234, 456, 123]

  >>> list4.sort()
  >>> list4
  [123, 123, 234, 456]
  sort(func,key)   func-->排序的算法  key-->跟算法搭配的关键字 默认使用归并排序

       sort([func, key,] reverse = False)默认设置

  >>> list4.sort(reverse = True)
  >>> list4
  [456, 234, 123, 123]

拷贝补充 python的变量就像一个标签,就一个名字而已,贴哪是哪儿

  >>> list5 = list4[:]
  >>> list6 = list4
  >>> list5
  [456, 234, 123, 123]
  >>> list6
  [456, 234, 123, 123]
  >>> list4.sort()
  >>> list5
  [456, 234, 123, 123]
  >>> list6
  [123, 123, 234, 456]




  

 

 

 

 

 

 

 

  

 

 

 


 

 

posted @ 2017-08-31 22:14  110528844  阅读(247)  评论(0编辑  收藏  举报