转自 http://www.cnblogs.com/BeginMan/p/3153842.html

一、序列类型操作符

1、切片[]和[:]

2、成员关系操作符(in ,not in )

   1:  s1 = [1,2,3,4,5,6,7]
   2:  s2 = [2,3,6]
   3:  s3 = []
   4:  for obj in s1:
   5:       if obj not in s2:
   6:           s3.append(obj)
   7:   
   8:  print s3
   9:  s4 = set(s1)-set(s2)
  10:  print s4    #set([1, 4, 5, 7])

3、连接操作符 (+)

+:   两边连接同类型的,并且连接之后创建一个新的对象,不能将一个元素添加进去,只能是一个list对象+list对象。

   1:  print s1+s2 #[1, 2, 3, 4, 5, 6, 7, 2, 3, 6]
   1:  注意:
   2:  li=[1,2,3]
   3:  li.extend('good'),
   4:  print li  则输出:[1,2,3,'g','o''o','d']
   5:  如果我们换成li.append('good')之后,则输出[1,2,3,'good'].
   6:  这是因为extend()添加整个列表对象,append()添加元素

注意:

   1:  >>> li = [1,2,3]
   2:  >>> li+'new item'
   3:   
   4:  Traceback (most recent call last):
   5:    File "<pyshell#15>", line 1, in <module>
   6:      li+'new item'
   7:  TypeError: can only concatenate list (not "str") to list
   8:  >>> li.extend('item')
   9:  >>> li
  10:  [1, 2, 3, 'i', 't', 'e', 'm']
  11:  >>> li.append('item')
  12:  >>> li
  13:  [1, 2, 3, 'i', 't', 'e', 'm', 'item']
  14:  >>> 

4、重复操作符(*)

二、列表类型内建函数

1、list.append(obj):向列表中添加一个对象obj

   1:  lis = [1,2,3,4,'a','b','c','a','aaa','e','great']
   2:  lis.append('object')
   3:  print lis   #[1, 2, 3, 4, 'a', 'b', 'c', 'a', 'aaa', 'e', 'great', 'object']

2、list.count(obj):返回一个对象obj在列表中出现的次数

   1:  #print lis.count('a')  #2

3、list.extend(seq):把序列seq的内容添加到列表中

   1:  lis.extend('seq')   #[1, 2, 3, 4, 'a', 'b', 'c', 'a', 'aaa', 'e', 'great', 's', 'e', 'q']

4、list.index(obj,i=0,j=len(list)):返回list[k]==obj的k值,并且k的范围在 i<=k<j,否则引发ValueError异常

   1:  #print lis.index('aaa')  #8

5、list.insert(index,obj):在索引量为index的位置插入对象obj(必须两个参数)

   1:  lis.insert(1,'Z')
   2:  print lis   #[1, 'Z', 2, 3, 4, 'a', 'b', 'c', 'a', 'aaa', 'e', 'great']

6、list.pop(index = -1):删除并返回指定位置的对象,默认是最后一个

   1:  print lis.pop()     #great
   2:  print lis.pop(1)    #2

7、list.remove(obj):从列表中删除对象obj

   1:  lis = [1,2,3,4,'a','b','c','a','aaa','e','great']
   2:  #lis.remove('value')
   3:  #如果不存在则发生异常:
   4:  #Traceback (most recent call last):
   5:  #  File "E:\project\Python_test\src\test\dic.py", line 8, in <module>
   6:  #    lis.remove('value')
   7:  #ValueError: list.remove(x): x not in list
   8:  lis.remove('a')
   9:  #如果有多个相同的值,则只删除最前面的一个:[1, 2, 3, 4, 'b', 'c', 'a', 'aaa', 'e', 'great']
  10:  lis.remove('great') #[1, 2, 3, 4, 'b', 'c', 'a', 'aaa', 'e']
  11:   
  12:  print lis

8、list.reverse():原地翻转列表

   1:  lis = [1,2,3,4,'a','b','c','a','aaa','e','great']
   2:  lis.reverse()
   3:  print lis   #['great', 'e', 'aaa', 'a', 'c', 'b', 'a', 4, 3, 2, 1]

9、list.sort()

   1:  lis = [1,2,3,4,'a','b','c','a','aaa','e','great']
   2:  #lis.sort(cmp=None, key=None, reverse=False)
   3:  lis.sort(cmp=None, key=None, reverse=True)
   4:  print lis   #['great', 'e', 'c', 'b', 'aaa', 'a', 'a', 4, 3, 2, 1]
 

注意:那些可以改变对象值的可变对象的方法是没有返回值的

如:

   1:  lis = [1,2,3,4,'a','b','c','a','aaa','e','great']
   2:  print lis.extend('MM')  #None
   3:  result = lis.extend('MM')
   4:  print result    #None

这些操作会在列表中原地执行操作,也就是说现有的列表内容会被改变,但是没有返回值。与之相反,字符串方法有返回值:

   1:  print 'abc'.upper() #ABC

其中与序列有关的内建函数,则可有返回值:

   1:  print reversed(lis)     #<listreverseiterator object at 0x0128DAD0>
   2:  print sorted(lis)       #[1, 2, 3, 4, 'M', 'M', 'M', 'M', 'a', 'a', 'aaa', 'b', 'c', 'e', 'great']
 

三、序列类型函数

1、len()
2、max() min()
3、sorted()、reversed():注意字符串排序时使用字典序,而不是字母序
4、enumerate()、zip()
见:http://www.cnblogs.com/BeginMan/archive/2013/03/14/2959447.html
5、sum()
6、list()、tuple()

《转》python(7)列表的更多相关文章

  1. Python list列表的排序

    当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建函数sort() 这个应该是我们使用最多的也是最简单的排序函 ...

  2. python中列表和元组以及字符串的操作

    python中列表是非常好用的.不过有一些使用小细节还需要注意一下. tag[32:-4] 从index为32到tag的倒数第4个字符. 如果索引为32的值在倒数第4个字符的右边,那么将输出为空.只要 ...

  3. python基础——列表生成式

    python基础——列表生成式 列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式. 举个例子,要生成list [1, 2, 3, 4 ...

  4. Python的列表排序

    Python的列表排序 本文为转载,源地址为:http://blog.csdn.net/horin153/article/details/7076321 在 Python 中, 当需要对一个 list ...

  5. python中列表 元组 字典 集合的区别

    列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计 ...

  6. python对列表的联想

    python的列表与字典,已经接触无数次了.但是很多用法都记不住,个人觉得归根原因都是只是学了知识点而少用,也少思考.在此试图用宫殿记忆法对它们的用法做个简单的梳理. 首先,说说列表的删除,删除有三种 ...

  7. Python统计列表中的重复项出现的次数的方法

    本文实例展示了Python统计列表中的重复项出现的次数的方法,是一个很实用的功能,适合Python初学者学习借鉴.具体方法如下:对一个列表,比如[1,2,2,2,2,3,3,3,4,4,4,4],现在 ...

  8. python之列表(list)的使用方法介绍

    python之列表(list)介绍 在python的使用过程中,我们经常会用到列表,然而经常会遇到疑惑,下面我将详细介绍下列表使用方法. 一.列表 列表经常用到的功能使增.删.改和查功能. 1. 增 ...

  9. Python的列表

    1. Python的列表简介 1. 1 列表的定义 列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有相同的类型.列表中的每个元素都分配一个数字 ,即它的 ...

  10. python基础——列表推导式

    python基础--列表推导式 1 列表推导式定义 列表推导式能非常简洁的构造一个新列表:只用一条简洁的表达式即可对得到的元素进行转换变形 2 列表推导式语法 基本格式如下: [expr for va ...

随机推荐

  1. word中怎样把文档里的中文以及中文字符全选?

    word中怎样把文档里的中文以及中文字符全选? 参考: 百度 案例: 有个文档是中英文混杂的 现在需要把中文以及中文字符全部设置成别的颜色 应该怎样操作? 有80多页 别说让我一个一个的设置 以wor ...

  2. 模拟栈&&模拟队列

    模拟栈:class Stack { private List list = new ArrayList( ); public void push( Object obj ) { this.list.a ...

  3. 1089 Insert or Merge (25 分)

    According to Wikipedia: Insertion sort iterates, consuming one input element each repetition, and gr ...

  4. python中字符串输出格式

    print输入格式总结 通过使用ljust(),center(),rjust()函数来实现输入字符串的左右对齐,居中,右对齐等操作; 方法一:(函数不带参数,则默认以空格填充,注意:文字与空格总字符数 ...

  5. hdu6390 /// 欧拉函数+莫比乌斯反演 筛inv[] phi[] mu[]

    题目大意: 给定m n p 求下式   题解:https://blog.csdn.net/codeswarrior/article/details/81700226 莫比乌斯讲解:https://ww ...

  6. 第九篇 数据表设计和保存item到json文件

    上节说到Pipeline会拦截item,根据设置的优先级,item会依次经过这些Pipeline,所以可以通过Pipeline来保存文件到json.数据库等等. 下面是自定义json #存储item到 ...

  7. Pytest初体验

    Pytest安装,导入相关依赖哭 Pip3 install –U pytest U表示升级 Pip3 install pytestsugar pip3 install pytest-rerunfail ...

  8. java并发之同步辅助类CountDownLatch

    CountDownLatch 含义: CountDownLatch可以理解为一个计数器在初始化时设置初始值,当一个线程需要等待某些操作先完成时,需要调用await()方法.这个方法让线程进入休眠状态直 ...

  9. tf.matmul() 和tf.multiply() 的区别

    1.tf.multiply()两个矩阵中对应元素各自相乘 格式: tf.multiply(x, y, name=None) 参数: x: 一个类型为:half, float32, float64, u ...

  10. Java SE(1)

    Java SE基础回顾 1.循环语句中的break是终止全部循环,跳出循环体:而continue是终止本次循环,跳执行下一循环 2.return语句有两个作用:返回值:结束方法的运行 3.对于java ...