Python学习笔记(1)-列表

列表是什么?
列表由一系列按特定顺序排列的元素组成。列表看起来像这样:[1,2,3,4,1]。在列表中,可以由零个或多个元素组成,元素之间用逗号分开,具有相同值元素允许出现多次
使用[ ]或list()创建列表
例如创建一个空列表
empty_list = [ ]或者 empty_list = list()
使用list()将其他数据类型转换成列表
字符串列表:
>>> list('cat')
['c', 'a', 't']
元组列表:
>>> num = (1,2,3)
>>> list(num)
[1, 2, 3]
使用[offset]获取元素
从0开始计算,也可以用负数,尾部为-1
>>> a = [2,3,4,5]
>>> a[0]
2
>>> a[-1]
5
使用index列表元素的位置
>>> a
[2, 3, 4, 'a', 'b', 'c']
>>> a.index('a')
3
当指定偏移量超出列表范围,会产生IndexError错误。
利用切片取得子列表
[first:end:(step)]
>>> a = [1,2,3,4,5,6]
>>> a[::1]
[1, 2, 3, 4, 5, 6]
>>> a[::2]
[1, 3, 5]
>>> a[::-2]
[6, 4, 2]
使用[offset]修改元素
>>> a = [1,2,3,4,5,6]
>>> a[0]=10
>>> a
[10, 2, 3, 4, 5, 6]
在列表末添加元素(append)
>>> a = [1,2,3]
>>> a.append(4)
>>> a
[1, 2, 3, 4]
在列表指定位置添加元素(insert)
>>> a
[1, 2, 3, 4]
>>> a.insert(1,'happy')
>>> a
[1, 'happy', 2, 3, 4]
一个列表合并到另一个列表(extend)
>>> a = [1,2,3,4]
>>> b = ['a','b','c']
>>> a.extend(b)
>>> a
[1, 2, 3, 4, 'a', 'b', 'c']
删除位置元素
使用del语句删除任何位置元素
>>> a
[1, 2, 3, 4, 'a', 'b', 'c']
>>> del a[0]
>>> a
[2, 3, 4, 'a', 'b', 'c']
使用方法pop删除元素
列表就像一个栈,而删除列表末尾的元素相当于弹出栈顶元素
>>> a
[2, 3, 4, 'a', 'b', 'c']
>>> a.pop()
'c'
>>> a
[2, 3, 4, 'a', 'b']
>>> a.pop(2)
4
>>> a
[2, 3, 'a', 'b']
根据值删除元素(remove)
>>> a
[2, 3, 'a', 'b']
>>> a.remove(2)
>>> a
[3, 'a', 'b']
使用列表
列表用于保存变量
>>> [1,2,3,4,5]
列表用于循环
>>> a = [0,1,2,3,4]
>>> for i in a :#等价于for i in rang(5)
print(i)
0
1
2
3
4
in 和 not in 操作符
可以确定一个值是否在列表中,返回布尔值
>>> 1 in [0,1,2,3,4]
True
>>> 5 not in [0,1,2,3,4]
True
>>> 1 not in [0,1,2,3,4]
False
>>> 5 in [0,1,2,3,4]
False
多重赋值技巧
>>> one,two,three = [1,2,3]
>>> one
1
>>> two
2
>>> three
3
变量的数目和列表必须严格相等,否则Python将ValueError
常用方法
使用len()获取列表长度
>>> a
[0, 1, 2, 3, 4]
>>> len(a)
5
使用count()记录特定值出现的次数
>>> a = [1,2,3,4,3,5,1,1,3,1,3]
>>> a.count(1)
4
>>> a.count(3)
4
使用sort()重新排列元素
Python提供了二个函数
列表方法sort()会读对原列表进行排序,改变原列表内容;
通用函数sorted()则会返回排好序的列表副本,原列表内容不变。
>>> a = [5,4,3,2,1]
>>> a.sort()
>>> a
[1, 2, 3, 4, 5]
>>> a = [5,4,3,2,1]
>>> sorted(a)
[1, 2, 3, 4, 5]
>>> a
[5, 4, 3, 2, 1]
sort()方法注意
- 当场对列表排序,不要写出a = a.sort()这样的代码,试图记录返回值
- 不能对既有数字又有字符串值的列表排序,引起TypeError错误
- 对字符串排序时,使用"ASCII字符顺序"
使用join()转换为字符串
join()是split()的逆过程
>>> a = ['hello','world']
>>> b = ','.join(a)
>>> b
'hello,world'
>>> c = b.split(',')
>>> c
['hello', 'world']
使用=赋值,使用copy()赋值
如果使用=赋值多个变量,改变其中的任何一处会造成其他变量对应的值也被修改
>>> a = [1,2,3]
>>> b = a
>>> b[0] = 'a'
>>> a
['a', 2, 3]
>>> b
['a', 2, 3]
>>> a[2] = 'b'
>>> b
['a', 2, 'b']
>>> a
['a', 2, 'b']
因为a 和 b 指向的是同一个对象,因此,无论我们是通过 a 还是通过 b 来修改列表的内容,其结果都会作用于对方
我们可以通过下面3种方法,将一个列表的值复制到另一个新的列表中:
- b = a.copy()
- c = list(a)
- d = a[:]
b、c、d都是a的复制,改变任意一个变量都不会改变其他变量
Python学习笔记(1)-列表的更多相关文章
- 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学习笔记_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是一种有序的集合,可以随时添加和删除其中的元素.比如,列出班里所有同学的名字,就可以用一 ...
随机推荐
- Module的加载实现
烂笔头开始记录小知识点啦- 浏览器要加载 ES6模块,: <script type="module" src="./foo.js"></scr ...
- phpcms导航菜单的写法
PHP打印方法: {php print_r(变量);} <?php print_r(变量);?> 1. <div class="webnav"> {pc:g ...
- 无需ORM的数据库
DynamicDB是一种NoSQL数据库.一个实例下可以创建多种Database,一个Database中可以包含多个Collection(相当于关系型数据库中的Table),一个Collection中 ...
- 21.Odoo产品分析 (三) – 人力资源板块(2) – 工时表(1)
查看Odoo产品分析系列--目录 工时表是一个用来管理员工工作时间和出勤的模块.当需要计算员工的工作时间,并将这些时间对应到项目或者顾客上时,"工时表"就会起到一个非常好的作用. ...
- python 标准类库-并行执行之subprocess-子进程管理
标准类库-并行执行之subprocess-子进程管理 by:授客QQ:1033553122 1.使用subprocess模块 以下函数是调用子进程的推荐方法,所有使用场景它们都能处理.也可用Popen ...
- Android为TV端助力 apk静默安装
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/47803149 之前有很多朋友都问过我,在Android系统中怎样才能实现静默安装呢 ...
- 深入理解Java虚拟机03--垃圾收集器与内存分配策略
一.概述 哪些内存需要回收? 什么时候回收? 如何回收? 二.对象已死吗 1.引用计数算法 定义:给对象添加一个引用计数器,当增加一个引用时,加1,当一个引用时,减1; 缺陷:当对象之间互相循环 ...
- 【Spring源码解读】bean标签中的属性(一)你可能还不够了解的 scope 属性
scope 属性说明 在spring中,在xml中定义bean时,scope属性是用来声明bean的作用域的.对于这个属性,你也许已经很熟悉了,singleton和prototype信手捏来,甚至还能 ...
- 2017.9.16~17,热烈庆祝共创力罗老师《敏捷MINI体验式实战培训》在某大型企业成功举办!
2017.9.16~17日,深圳市共创力企业管理咨询有限公司为某上市企业提供了为期两天的内训服务.该次内训的主题为<敏捷MINI体验式实践培训>,为期两天.此次培训由共创力资深讲师Geor ...
- 没有服务商如何购买ERP的序列号?
一.试用期(未过期) 站点版购买: 门店版购买: 二.试用期(使用时间<=15天) 三.试用期(已过期) 登录时会弹出以下弹窗 剩下的购买步骤与未过期时购买步骤一致 四.续费 剩下步骤与未过期时 ...