在学习列表之前先了解了raw_input和input的区别:(仅适用于版本2,版本3中raw_input和input合并,没有raw_input)

input的语法为:input("str").

raw_input函数把所有的输入当做原始数据保存为字符串格式;

而input默认用户输入为python的合法格式,用于字符串连接时有一定的局限性。

1.序列索引

python中序列索引有两种表达形式:

(1)第一个元素索引是0,第二个是1,以此类推;

(2)最后一个元素索引是-1,倒数第二个是-2,以此类推;

这样,假设序列a个数为n,那么对于第i个元素:a[i]=a[-n+i]

2.序列分片

分片是索引的扩展,索引访问的是单个元素,分片访问的是一定范围内的元素。分片需要提供两个索引作为边界,第一个索引的元素包含在分片内,而第二个不包含在分片内。

举例:

>>> number=[0,1,2,3,4,5,6,7,8,9]
    >>> number[2:5]
    [2, 3, 4]

步长的表示:

>>> number[2:9:2]
    [2, 4, 6, 8]
    >>> number[2:8:2]
    [2, 4, 6]

函数:len:元素的数量;min和max分别返回序列中的最小和最大元素。

3.基本的列表操作

首先引入list函数:将字符串拆分为数组格式

>>> list("list")

['l', 'i', 's', 't']

(1)元素赋值:

>>> number=[0,1,2,3,4,5,6,7,8,9]

>>> number[0]=10
    >>> number
    [10, 1, 2, 3, 4, 5, 6, 7, 8, 9]

(2)删除元素

>>> number=[0,1,2,3,4,5,6,7,8,9]

>>> del number[0]
    >>> number
    [1, 2, 3, 4, 5, 6, 7, 8, 9]

(3)分片赋值

>>> number[1, 2, 3, 4, 5, 6, 7, 8, 9]

>>> number[0:]=[1,2,3]
    >>> number
    [1, 2, 3]

a:列表          n:索引

4.列表的操作方法

(1)append:在列表末尾添加新的元素   a.append('')

>>> number=[1, 2, 3]

>>> number.append(5)
    >>> number
    [1, 2, 3, 5]

(2)count:统计某个元素出现的个数 a.count()

>>> number=[1, 2, 3]

>>> number.count(1)
    1

(3)extend:在序列后添加序列   a.attend(b)

>>> a=[1,2,3]
    >>> b=[4,5,6]
    >>> a.extend(b)
    >>> a
    [1, 2, 3, 4, 5, 6]

(4)index:用于从列表中找出某个值第一个匹配项的索引位置  a.index(n)

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.index(4)
4

(5)insert:将新对象插入到列表中,a.insert(index,'')在第index的位置插入“”

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.insert(10,10)
>>> number
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

(6)pop:移除列表中的一个元素,默认最后一个 a.pop(n)

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.pop()
9
>>> number
[0, 1, 2, 3, 4, 5, 6, 7, 8]
>>> number.pop(0)
0
>>> number
[1, 2, 3, 4, 5, 6, 7, 8]

(7)remove:移除某个值的第一个匹配项  a.remove('')

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.remove(7)
>>> number
[0, 1, 2, 3, 4, 5, 6, 8, 9]

(8)reverse:将列表中的元素反向存放 a.reverse()

>>> number=[0,1,2,3,4,5,6,7,8,9]
>>> number.reverse()
>>> number
[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]

(9)sort、sorted:将列表中的元素排列

对自身排列: a.sort()

>>> number=[4,3,2,6,7,3]
>>> number.sort()
>>> number
[2, 3, 3, 4, 6, 7]

排列后赋值给其他变量:  b=sorted(a)

>>> number1=sorted(number)
>>> number1
[2, 3, 3, 4, 6, 7]

(10)cmp:比较函数,cmp(a,b)   若a>b,返回1,若a<b,返回-1,若a=b,返回0

元组和列表一样,也是一种序列,不同的是元组不能修改。

元组的创建:用逗号分隔开一些元素就自动创建了元组,或用圆括号创建。

tuple:以一个序列为输入,把它转换为元组

>>> a=[1,2,3]
>>> tuple(a)
(1, 2, 3)

python笔记之列表与元组函数和方法使用举例的更多相关文章

  1. Python 学习笔记(1)Python容器:列表、元组、字典与集合

    Python容器:列表.元组.字典与集合 列表: 1.列表 的创建 使用[ ] 或者 list()创建列表:empty_list = [ ] 或者 empty_list= list() 使用list( ...

  2. Python基础------列表,元组的调用方法

    Python基础------列表,元组的调用方法@@@ 一. 列表 Python中的列表和歌曲列表类似,也是由一系列的按特定顺序排列的元素组成的,在内容上,可以将整数,实数,字符串,列表,元组等任何类 ...

  3. python基础之列表list元组tuple

    作者:tongqingliu 转载请注明出处:http://www.cnblogs.com/liutongqing/p/7041763.html python基础之列表list元组tuple 列表li ...

  4. python 列表,元组,字符串方法和属性

    python序列包含列表[].元组().字符串三种 -------列表-------------- 一.列表基本内容 1.建立:a=[1,2,3,5],通过[ , ,], >>>b= ...

  5. python 变量、列表、元组、字典

    python 变量.列表.元组.字典 1.python 变量赋值 2.ptython  列表 3.python 元组 4.python  字典 1.  Python变量赋值     1.1变量的命名规 ...

  6. python学习笔记之列表与元组

    一.概述 python包含6种内建的序列,其中列表和元组是最常用的两种类型.列表和元组的主要区别在于,列表可以修改,元组则不能修改 使用上,如果要根据要求来添加元素,应当使用列表:而由于要求序列不可修 ...

  7. Python数据基础--列表、元组、字典、函数

    一.数据结构 列表(List)和元组 序列是Python中最基本的数据结构.序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推. Python有6个序列的内 ...

  8. python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码

    本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...

  9. Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码

    一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...

随机推荐

  1. .NET(C#):XML序列化时派生类的处理

    原文 www.cnblogs.com/mgen/archive/2011/12/03/2275014.html 目录 1. 针对基类的XmlSerializer序列化派生类 2. 类内成员是派生类的序 ...

  2. eclipse svn插件显示作者

    在另一台电脑里安装了SVN插件后,发现项目文件后面只有版本号,没有作者名字了,找了很久才找到了,现记录在这里. window->preferences->team->svn-> ...

  3. JAVA词汇大全

    JAVA词汇大全 A B C D E F H I J L M O P R S T U V W A  Abstract Window Toolkit(AWT)抽象窗体工具集   一个用本地图形组件实现的 ...

  4. 解决Fragment中使用ViewPager时,ViewPager里的Fragment错位和空白问题

    这两天开始在改OSChina的开源android客户端,打算用Fragment来分离Main这个Activity里的功能.用Fragment嵌套ViewPager+Fragment的时候发现问题. 红 ...

  5. ubuntu之iptables

    1.更新iptables并立即生效: a.保存当前设置:iptables-save > /etc/iptables.up.rules b.修改iptables规则: 例如: -I INPUT - ...

  6. js执行环境相关

    Js执行过程 如果一个文档中存在多个代码段 步骤一:读入第一个代码段(js引擎并非一行一行执行,而是一段一段分析执行) 步骤二:做词法分析和语法分析,有错则报语法错误(比如括号不匹配等),并跳转到步骤 ...

  7. 五子棋Web版的开发(三)

    最近在这个上面花费的时间不多,进展不大,而且遇到了一个问题好久也没有解决..我将struct2 改为Spring MVC.但是ziRUL的自动映射却无法起作用.   一直不知道为什么会出现这个问题.. ...

  8. JavaSE学习总结第27天_反射 & 设计模式 & JDK5、7、8新特性

      27.01  反射_类的加载概述和加载时机 类的加载:当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化. 加载:就是指将class文件读 ...

  9. C程序的存储空间布局

    历史沿袭至今,C程序一直由下列几部分组成: 1. 正文段.这是由CPU执行的机器指令部分.通常,正文段是可共享的,所以即使是频繁执行的程序(编辑器,编译器,命令解释器)在存储器中也只需一个副本,另外正 ...

  10. jvm 调优 工具

    1.用于打开运行中的jvm进程的gc 监控日志以及查看相关参数设置:jinfo 2.其它工具如:jps.jstack.jstat.jmap