《python基础教程(第二版)》学习笔记 列表/元组(第2章)
序列中的下标从0开始
x='ABC' ==> x[0]='A', x[1]='B', x[2]='C'
负数索引从右边开始。最后一个元素下标是-1;x[-1]='C'
'ABC'[0]  ==>  'A'
raw_input("x:")[3] 输入数据当作字符串
列表分片:x[2:5], x[-3:-1], x[-3:], x[:3], x[:]  #列表名字[起始下标:结束下标]
列表分片+步长: x[0:10:2], x[8:3:-1], x[::2], x[5::-1]   #列表名字[起始下标:结束下标:步长]
序列相加:
[1,2]+[3,4] ==> [1, 2, 3, 4]
'ABC' + '123'  ==> 'ABC123'
序列乘法(重复):
'ABC'*2 ==> 'ABCABC'
[1,2,3]*2 ==>  [1, 2, 3, 1, 2, 3]
None 空值
[] 空序列
初始化序列:x=[None]*3  ==> x=[None, None, None]
成员资格:
'3' in ['1','2','3'] ==> True
'3' in '123' ==> True
元素个数:len([1,2,3]) ==> 3
最大值:max([1,2,3]) ==> 3
最小值:min([1,2,3]) ==> 1
把字符串转为列表:
list('ABC') ==> ['A', 'B', 'C']
连接元素:
x=list('ABC'); '-'.join(x)  ==>  'A-B-C'   #连接字符.join(列表)
赋值:
x=list('ABC'); x[1]='2'  ==>  x=['A', '2', 'C']
删除元素:
x=list('ABC'); del x[1] ==> ['A', 'C']
分片赋值:
x=list('ABC'); x[2:2]=list('23') ==> ['A', 'B', '2', '3', 'C'] # 插入新元素
x=list('ABC'); x[1:2]=[] ==> x=['A', 'C'] # 删除元素
列表方法:
x=[1,2]; x.append(3) ==> x=[1, 2, 3] #追加元素
x=[1, 2, 3]; x.count(3) ==> 1 #统计元素出现次数
x=[1, 2, 3]; y=[8,9]; x.extend(y) ==> x=[1, 2, 3, 8, 9] # 把一个序列的元素追加到另外一个序列的末尾
[1,2,3]+[4,5,6] ==> [1,2,3,4,5,6]
[1,2,3,4,5,6].index(4) ==> 3 # 查找一个元素的下标
x=[1,2,3];  x.insert(2,8) ==> x=[1, 2, 8, 3] #插入元素
x=[1,2,3];  x.pop() ==> 3, x=[1, 2] # 返回最后一个元素;并删除最后一个元素
x=[1,2,3];  x.pop(0) ==> 1, x=[2, 3] # 返回下标为0的元素,并删除该元素
x=[1,2,3];  x.remove(2) ==> x=[1, 3] #删除元素2
x=[1,2,3];  x.reverse() ==> x=[3, 2, 1] #倒置列表
x=[9,7,8];  x.sort() ==> x=[7, 8, 9] # 从小到大排序;注意:x.sort()没有返回值
x=[9,7,8];  y=sorted(x) ==> x=[9,7,8] y=[7, 8, 9]
高级排序:
x=[9,7,8]; x.sort(cmp) # 采用cmp函数排序
x=[9,7,8]; x.sort(key=len) # 根据元素的长度排序
x=[9,7,8]; x.sort(reverse=True) # 反向排序;从大到小

元组不能修改;元组中必须有逗号
1,2,3 #三个元素的元组
(1,2,3) #三个元素的元组
() #空元组
1, ==> (1,) #1个元素的元组
(1,)  #1个元素的元组
2*(1,) ==> (1, 1) # 元组乘法/重复
tuple([1,2,3]) ==> (1, 2, 3) # 把序列变为元组
tuple('abc') ==> ('a', 'b', 'c') # 把序列变为元组
tuple((1,2,3)) ==> (1, 2, 3)
元组的操作和列表类似,只是元组不能修改;

遍历列表的方法:

for item in thelist:
  doSoming(item)

for i in range(len(thelist)):
  doSoming(thelist[i])

《python基础教程(第二版)》学习笔记 列表/元组(第2章)的更多相关文章

  1. 第二章、元组和列表(python基础教程第二版 )

    最基本的数据结构是序列,序列中每个元素被分配一个序号-元素的位置,也称索引.第一个索引为0,最后一个元素索引为-1. python中包含6种内建的序列:元组.列表.字符串.unicode字符串.buf ...

  2. Jquery基础教程第二版学习记录

    本文仅为个人jquery基础的学习,简单的记录以备忘. 在线手册:http://www.php100.com/manual/jquery/第一章:jquery入门基础jquery知识:jquery能做 ...

  3. <<Python基础教程>>学习笔记 | 第10章 | 充电时刻

    第10章 | 充电时刻 本章主要介绍模块及其工作机制 ------ 模块 >>> import math >>> math.sin(0) 0.0 模块是程序 一个简 ...

  4. <<Python基础教程>>学习笔记 | 第04章 | 字典

    第04章:字典 当索引不好用时 Python唯一的内建的映射类型,无序,但都存储在一个特定的键中.键能够使字符.数字.或者是元祖. ------ 字典使用: 表征游戏棋盘的状态,每一个键都是由坐标值组 ...

  5. <<Python基础教程>>学习笔记 | 第11章 | 文件和素材

    打开文件 open(name[mode[,buffing]) name: 是强制选项,模式和缓冲是可选的 #假设文件不在.会报以下错误: >>> f = open(r'D:\text ...

  6. <<Python基础教程>>学习笔记 | 第12章 | 图形用户界面

    Python支持的工具包非常多.但没有一个被觉得标准的工具包.用户选择的自由度大些.本章主要介绍最成熟的跨平台工具包wxPython.官方文档: http://wxpython.org/ ------ ...

  7. python基础教程第二版 第一章

    1.模块导入python以增强其功能的扩展:三种方式实现 (1). >>> Import math >>> math.floor(32.9) 32.0 #按照 模块 ...

  8. Docker技术入门与实战 第二版-学习笔记-10-Docker Machine 项目-2-driver

    1>使用的driver 1〉generic 使用带有SSH的现有VM/主机创建机器. 如果你使用的是机器不直接支持的provider,或者希望导入现有主机以允许Docker Machine进行管 ...

  9. Docker技术入门与实战 第二版-学习笔记-8-网络功能network-3-容器访问控制和自定义网桥

    1)容器访问控制 容器的访问控制,主要通过 Linux 上的 iptables防火墙来进行管理和实现. iptables是 Linux 上默认的防火墙软件,在大部分发行版中都自带. 容器访问外部网络 ...

随机推荐

  1. mysql innodb_data_file_path配置增加

    在配置innodb_data_file_path=ibdata1:200M:autoextend时,想增加空间,默认文件不断增加直到200M,如果要增加大小,直接修改参数增加大小会报错: auto-e ...

  2. Windows下静态库、动态库的创建和调用过程

    静态库和动态库的使用包括两个方面,1是使用已有的库(调用过程),2是编写一个库供别人使用(创建过程).这里不讲述过多的原理,只说明如何编写,以及不正确编写时会遇见的问题. //注:本文先从简单到复杂, ...

  3. KSTORE日常工作遇到问题总结

    1.csv导入kstore命令语句 oimpexp -F "E:/127.csv" -S KSTORE -T "T_BUSDATA"  -d 1 -z -B 7 ...

  4. 解决Class 'swoole_server' not found

    1.看下cli模式是否可以正常工作,命令行下运行 php -r "echo php_sapi_name();" 这条命令就是在cli模式运行php语句,php -r就是run一条p ...

  5. 忘记glassfish密码,那就重置密码呗

    方法一:如果现有的 domain 上并没有你所需要的东西,删除现有的 domain,重新创建一个 domain. 找到安装glassfish的目录下的 \bin\asadmin 目录,然后打开asad ...

  6. 线性同余方程模板( A+C*x=B(mod D) )

    void extendgcd(long long a,long long b,long long &d,long long &x,long long &y) { ){d=a;x ...

  7. Jmeter 05 JMeter元件详解

    1. JMeter 逻辑控制器 Switch条件控制器.While条件控制器.交替控制器.仅一次控制器.随机控制器.随机顺序控制器.条件控制器(如果(if)).循环控制器.录制控制器.ForEach控 ...

  8. android菜鸟学习笔记19----Android数据存储(三)XML文件的解析及序列化

    Android内置了PULL解析器的XPP3实现,以及SAX解析器等,可以直接使用PULL或SAX解析XML,直接把JAVA中进行PULL或SAX解析的代码直接拿来用,遗忘的话,可以参考java拾遗1 ...

  9. sgu 1348 Goat in the Garden 2【点到线段的距离】

    链接: http://acm.timus.ru/problem.aspx?space=1&num=1348 http://acm.hust.edu.cn/vjudge/contest/view ...

  10. POJ 1845-Sumdiv【经典数学题目---求因子和】

    转载请注明出处:http://blog.csdn.net/lyy289065406/article/details/6648539 優YoU  http://user.qzone.qq.com/289 ...