python学习笔记4(列表)
列表是最通用的Python复合数据类型,列表中包含以逗号分隔,并在方括号([])包含的项目。
在一定程度上,列表相似C语言中的数组,它们之间的一个区别是,所有属于一个列表中的项目可以是不同的数据类型的。
存储在一个列表中的值可以使用切片(分片)操作符来访问([]和[:])用索引从0开始,使用负数索引时,Python会从右边开始计数(-1指的是序列最右边的元素)。
加号(+)符号列表连接运算符,星号(*)重复操作。
list = ['abcd', 123, 2.23, 'Ethon']
tinylist = [123,'wakey']
print list
print list[0]
print list[1:3]
print list[2:]
print tinylist * 2
print list + tinylist
产生已下结果:

分片:与使用索引来访问单个元素类似,可以使用分片操作来完成一定范围内的元素,分片通过冒号相隔的两个索引来实现。第一个索引的元素是包含在分片内的,而第二个则不包含(这是Python的惯例)。
>>> numbers = [1,2,3,4,5,6,7,8,9]
>>> numbers[3:6]
[4, 5, 6]
>>> numbers[0:8:2] #步长为2,每隔一个元素
[1, 3, 5, 7]
>>> numbers[8:3:-1] #步长为-1,即从右到左提取元素
[9, 8, 7, 6, 5]
-1表示切片要倒着切,且是一个字符一个字符地切.
8表示从左边0开始计数的8位置上的数,9
3表示从左边0开始计数的3位置上的数,4,但不包括它,所以是只截到5
>>> numbers[6:-1] #从最6个数到倒数第1个数 [7, 8] >>> numbers[:] #索引为空,复制整个序列 [1, 2, 3, 4, 5, 6, 7, 8, 9]
成员资格:为了检查一个元素是否在序列中,可以使用 in 运算符
>>> name = 'Ethon'
>>> 'E' in name
True
>>> 'A' in name
False
长度、最小值、最大值
>>> numbers = [100,25,37]
>>> len(numbers)
3
>>> min(numbers)
25
>>> max(numbers)
100
列表操作
1、改变列表,元素赋值
>>> x = [1,1,1]
>>> x[0]=2
>>> x
[2, 1, 1]
2、删除元素
>>> names= ['Ethon','joho','wakey']
>>> del names[1]
>>> names
['Ethon', 'wakey']
3、分片赋值
>>> name = list('Ethon')
>>> name
['E', 't', 'h', 'o', 'n']
>>> name[2:]
['h', 'o', 'n']
>>> name[2:] = list('abc')
>>> name
['E', 't', 'a', 'b', 'c']
列表方法:方法是一个与某些对象有紧密联系的的函数,对象可能是列表,数字,也可能是字符串或其他类型的对象。
方法可以这样进行调用: 对象.方法(参数)
1、append 在列表末尾添加新的对象
>>> lst = [1,2,3]
>>> lst.append(4)
>>> lst
[1, 2, 3, 4]
2、count 统计某个元素出现的次数
>>> name = ['Ethon','wakey','wakey','joho']
>>> name.count('wakey')
2
3、extend 在列表的末尾一次性追加另一个序列中的值
>>> a = [1,2,3]; b = [4,5,6]
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 5, 6]
4、index 在列表中找个某个值第一个匹配项的索引位置
>>> name = ['Ethon','wakey','joho','Misi']
>>> name.index('joho')
2
5、insert 将对像插入到列表中
>>> numbers = [1,2,3,4,5]
>>> numbers.insert(3,'Ethon')
>>> numbers
[1, 2, 3, 'Ethon', 4, 5]
6、pop 移除列表中的一个元素(默认是第后一个元素)
pop方法是唯一一个既能修改列表,又能返回元素值的列表方法
>>> x = [1,2,3,4]
>>> x.pop()
4
>>> x
[1, 2, 3]
7、remove 移除列表中某个值的第一个匹配项
>>> name = ['joho','wakey','Ethon','misi','wakey']
>>> name.remove('wakey')
>>> name
['joho', 'Ethon', 'misi', 'wakey']
8、reverse 将列表中的元素反向存放
>>> x = [1,2,3]
>>> x.reverse()
>>> x
[3, 2, 1]
9、sort 在原位置对列表进行排序(改变原来的列表)
>>> x = [3,1,6,5,4]
>>> x.sort()
>>> x
[1, 3, 4, 5, 6]
当用户需要一个排序后的列表副本,又不想改变原来的列表时,可以用以下方法:
>>> x = [3,1,6,5,4]
>>> y = x[:]
>>> y.sort() #将x的副本赋值给y,然后对y进行排序
>>> x
[3, 1, 6, 5, 4]
>>> y
[1, 3, 4, 5, 6]
或使用 sorted 函数
>>> x = [3,1,6,5,4]
>>> y=sorted(x)
>>> x
[3, 1, 6, 5, 4]
>>> y
[1, 3, 4, 5, 6]
python学习笔记4(列表)的更多相关文章
- python学习笔记整理——列表
Python 文档学习笔记 数据结构--列表 列表的方法 添加 list.append(x) 添加元素 添加一个元素到列表的末尾:相当于a[len(a):] = [x] list.extend(L) ...
- python学习笔记-列表和字典
由于最近在看深度学习的代码,看到需要建立字典和列表来存储什么东西的时候,就想要去把字典和列表好好的了解清楚,其应用范围,差别,等等东西 首先我们来介绍,在python中存在如下的数据结构:列表list ...
- python学习笔记(列表、元组、购物车实例)
一.列表 列表和字典是最常用的两种数据类型 1. 需求:怎么存放班级80多人的姓名,如何实现? names = ["Zhangyang","Guyun",&qu ...
- Python学习笔记4—列表
列表定义 >>> a=['] >>> type(a) <type 'list'> >>> bool(a) #列表有值,则为true T ...
- python学习笔记之列表与元组
一.概述 python包含6种内建的序列,其中列表和元组是最常用的两种类型.列表和元组的主要区别在于,列表可以修改,元组则不能修改 使用上,如果要根据要求来添加元素,应当使用列表:而由于要求序列不可修 ...
- Python学习笔记(1)-列表
列表是什么? 列表由一系列按特定顺序排列的元素组成.列表看起来像这样:[1,2,3,4,1].在列表中,可以由零个或多个元素组成,元素之间用逗号分开,具有相同值元素允许出现多次 使用[ ]或list( ...
- Python学习笔记_week2_列表、元组、字典、字符串、文件、i编码
一. 列表.元组 names=["A","B","C","D"] print(names) print(names[0] ...
- Python学习笔记4—列表List
列表定义 Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素. >>> a=['] >>> type(a) &l ...
- python学习笔记(2)--列表、元组、字符串、字典、集合、文件、字符编码
本节内容 列表.元组操作 字符串操作 字典操作 集合操作 文件操作 字符编码与转码 1.列表和元组的操作 列表是我们以后最长用的数据类型之一,通过列表可以最方便的对数据实现最方便的存储.修改等操作 定 ...
- python学习笔记(三)-列表&字典
列表: 一.列表操作"""Python内置的一种数据类型是列表:list.list是一种有序的集合,可以随时添加和删除其中的元素.比如,列出班里所有同学的名字,就可以用一 ...
随机推荐
- [设计模式]<<设计模式之禅>>关于里氏替换原则
在面向对象的语言中,继承是必不可少的.非常优秀的语言机制,它有如下优点:● 代码共享,减少创建类的工作量,每个子类都拥有父类的方法和属性:● 提高代码的重用性:● 子类可以形似父类,但又异于父类,“龙 ...
- 关于64位Linux编译hadoop2
Apache官方提供hadoop2的安装包是在32位机器下编译的,生产环境一般使用64的Linux,那么需要在64位机器下重新编译可以查看hadoop-2.2.0-src下的BUILDING.txtB ...
- Myeclipse中tomcat所应用的JDK设置
Preferences------ > MyElipse ---------- >Servers ----------- > Tomcat-------- >Tomcat 6. ...
- Networking - IPv4 报文格式
每个 IP 数据报都以一个 IP 报头开始.源计算机的 TCP/IP 软件构造这个 IP 报头,目的计算机的 TCP/IP 软件利用 IP 报头中封装的信息处理数据.IP 报头包含大量信息,包括源 I ...
- HTTP - 持久连接
Web 客户端经常会打开到同一个站点的连接.比如,一个 Web 页面上的大部分内嵌图片通常都是来自同一个 Web 站点,而且相当一部分指向其他对象的超链接通常都指向同一个站点.因此,初始化了对某服务器 ...
- Sqlite事物与锁
1事务 事务定义了一组SQL命令的边界,这组命令或者作为一个整体被全部执行,或者都不执行.事务的典型实例是转帐. 2事务的范围 事务由3个命令控制:BEGIN.COMMIT和ROLLBACK.BEGI ...
- 如何设置win7任务栏的计算机快速启动
win7默认会有一个资源管理器的快速启动栏,但是点击的时候会打开“库”,你可能一般不会用这个库,想打开计算机怎么办呢? 其实很简单,再按住shift的同时右键资源管理器的这个快速启动项,然后会出现菜单 ...
- php递归方法实现无限分类实例
数组: 代码如下 复制代码 $items = array( array('id' => 1, 'pid' => 0, 'name' => '一级11' ), array('id' ...
- android application类的用法
android application类的用法 Application是android系统Framework提供的一个组件,它是单例模式(singleton),即每个应用只有一个实例,用来存储系统的一 ...
- 什么是C++标准库?
C++中的标准程序库(简称标准库)是类库和函数的集合,其使用核心语言写成.标准程序库提供若干泛型容器.函数对象.泛型字符串和流(包含交互和文件I/O),支持部分语言特性和常用的函数,如开平方根.C++ ...