转自 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学习02 列表 List

    Python学习02 列表 List Python列表 List Python中的列表(List)用逗号分隔,方括号包围(comma-separated values (items) between ...

  2. python学习笔记——列表生成式与生成器

    1.列表生成式(List Comprehensions) python中,列表生成式是用来创建列表的,相较于用循环实现更为简洁.举个例子,生成[1*1, 2*2, ... , 10*10],循环用三行 ...

  3. Python学习3——列表和元组

    一.通用序列操作——索引.切片.相加.相乘.成员资格检查 1.索引,正序从0开始为第一个元素,逆序从-1开始,-1为最后一个元素 >>> greeting[0] 'h' >&g ...

  4. python学习之列表的定义以及增删改查

    列表定义: >>> name['lily','lucy','tom'] >>> nums = [11,22,33,'100','lily'] #python中的列表 ...

  5. Python学习06——列表的操作(2)

    笨办法学Python第39节 之前用的第三版的书,昨天发现内容不对,八块腹肌又给我下了第四版,这次的内容才对上.本节的代码如下: ten_things = "Apples Oranges C ...

  6. python学习04——列表的操作

    笨办法学python第38节 如何创建列表在第32节,形式如下: 本节主要是讲对列表的操作,首先讲了 mystuff.append('hello') 的工作原理,我的理解是,首先Python找到mys ...

  7. python学习之列表语法

    1.列表 1 list.append(obj)在列表末尾添加新的对象2 list.count(obj)统计某个元素在列表中出现的次数3 list.extend(seq)在列表末尾一次性追加另一个序列中 ...

  8. python学习笔记——列表操作

    python列表操作——增 append:追加一条数据到列表的最后 name = ["Zhangsan","XiongDa","Lisi"] ...

  9. python学习之列表和字典

    列表 基本操作>>>len([1,3,4])3 >>>[1,2,3]+[4,5,6]    +号两边必须是相同类型[1,2,3,4,5,6] >>> ...

  10. Python学习_03_列表、元组、字符串

    列表.元组.字符串这些通过顺序访问的对象统称为序列. 序列的标准操作符 对于一般的序列对象,包括列表.元组.字符串,都具有以下的标准操作: 1. element [not] in seq判断一个元素是 ...

随机推荐

  1. 【C#/WPF】键盘事件

    需求:按下回车键,触发事件. 搜MSDN时,看到的键盘事件是System.Windows.Forms里的,在WPF中没法用: https://msdn.microsoft.com/zh-tw/libr ...

  2. java多线程有几种实现方法?线程之间如何同步

    java中多线程的实现方法有两种:1.直接继承thread类:2.实现runnable接口: 同步的实现方法有五种:1.同步方法:2.同步代码块:3.使用特殊域变量(volatile)实现线程同步:4 ...

  3. iOS边练边学--九宫格布局

    一.介绍一下ViewController中的结构 二.九宫格设计思路 三.代码实现 // 点击增加按钮 - (void)add:(UIButton *)btn { // 定义一行中的列数(个数) NS ...

  4. Hibernate- hibernate二级缓存

    原文地址:http://www.iteye.com/topic/18904 很多人对二级缓存都不太了解,或者是有错误的认识,我一直想写一篇文章介绍一下hibernate的二级缓存的,今天终于忍不住了. ...

  5. java- Servlet-session

    Servlet 相关:http://blog.csdn.net/ggGavin/article/category/2134213 Servlet——Session(1)之基础知识 Servlet——S ...

  6. nginx connect() failed,Connection refused,while connecting to upstream fastcgi

    connect() failed (111: Connection refused) while connecting to upstream fastcgi://127.0.0.1:9000 net ...

  7. HTTP API 设计指南(结尾)

    前言 这篇指南介绍描述了 HTTP+JSON API 的一种设计模式,最初摘录整理自 Heroku 平台的 API 设计指引 Heroku 平台 API 指引. 这篇指南除了详细介绍现有的 API 外 ...

  8. LoadRunner性能测试基础知识问答

    Q1:什么是负载测试?什么是性能测试? A1:负载测试是通过逐步增加系统负载,测试系统性能的变化,并最终确定在满足性能指标的情况下,系统所能承受的最大负载量的测试,例如,访问一个页面的响应时间规定不超 ...

  9. e552. 取Applet的参数

    An applet can be configured through the use of applet parameters. For example, the contents for a ne ...

  10. Hello World! 这是我的第一个 CGI 程序

    Hello World! 这是我的第一个 CGI 程序上面的 C++ 程序是一个简单的程序,把它的输出写在 STDOUT 文件上,即显示在屏幕上.在这里,值得注意一点,第一行输出 Content-ty ...