读书笔记「Python编程:从入门到实践」_3.列表简介
3.1 列表是什么
列表 由一系列按特定顺序排列的元素组成。
在Python中,用方括号([] )来表示列表,并用逗号来分隔其中的元素。
3.1.1 访问列表元素
指出列表的名称,再指出元素的索引
3.1.2 索引从0而不是1开始
Python为访问最后一个列表元素提供了一种特殊语法。通过将索引指定为-X ,可让Python从后面返回第X个列表元素:
3.1.3 使用列表中的各个值
可像使用其他变量一样使用列表中的各个值。例如,你可以使用拼接根据列表中的值来创建消息。
例
bicycles = ['trek', 'cannondale', 'redline', 'specialized']
print(bicycles[2].title())
print(bicycles[-2].title())
message = "My first bicycle was a " + bicycles[0].title() + "."
print(message)
结果
Redline
Redline
My first bicycle was a Trek.
3.2 修改、添加和删除元素
3.2.1 修改列表元素
要修改列表元素,可指定列表名和要修改的元素的索引,再指定该元素的新值。
3.2.2 在列表中添加元素
1. 在列表末尾添加元素 方法append() 将元素添加到了列表末尾
2. 在列表中插入元素 方法insert() 可在列表的任何位置添加新元素。为此,你需要指定新元素的索引和值。
3.2.3 从列表中删除元素
1. 使用del 语句删除元素 如果知道要删除的元素在列表中的位置,可使用del 语句。 del list[x]
2. 使用方法pop() 删除元素 方法pop() 可删除列表末尾的元素,并返回删除元素的值
3. 弹出列表中任何位置处的元素 你可以使用pop() 来删除列表中任何位置的元素,只需在括号中指定要删除的元素的索引即可。
4. 根据值删除元素 只知道要删除的元素的值,可使用方法remove() .方法remove() 只删除第一个指定的值。
如果要删除的值可能在列表中出现多次,就需要使用循环来判断是否删除了所有这样的值。
例
testList = ['aaa', 'bbb', 'ccc']
print(testList[-1])
print(testList)
testList[0] = 'ddd'
print(testList)
testList.append('eee')
testList.append('eee')
testList.append('eee')
print(testList)
testList.insert(0,'aaa')
print(testList)
del testList[1]
print(testList)
testList.pop()
print(testList)
testList.pop(-3)
print(testList)
testList.remove('eee')
print(testList)
ccc
['aaa', 'bbb', 'ccc']
['ddd', 'bbb', 'ccc']
['ddd', 'bbb', 'ccc', 'eee', 'eee', 'eee']
['aaa', 'ddd', 'bbb', 'ccc', 'eee', 'eee', 'eee']
['aaa', 'bbb', 'ccc', 'eee', 'eee', 'eee']
['aaa', 'bbb', 'ccc', 'eee', 'eee']
['aaa', 'bbb', 'eee', 'eee']
['aaa', 'bbb', 'eee']
3.3 组织列表
3.3.1 对列表进行永久性排序 使用方法sort()
3.3.2 对列表进行临时排序 使用函数sorted()
3.3.3 倒着打印列表 可使用方法reverse() 反转列表元素的排列顺序
3.3.4 确定列表的长度 使用函数len()
例
testList = ['bbb', 'ddd','aaa','ccc']
print(sorted(testList))
print(testList)
testList.reverse()
print(testList)
testList.sort()
print(testList)
testList.reverse()
print(testList)
print(len(testList))
结果
['aaa', 'bbb', 'ccc', 'ddd']
['bbb', 'ddd', 'aaa', 'ccc']
['ccc', 'aaa', 'ddd', 'bbb']
['aaa', 'bbb', 'ccc', 'ddd']
['ddd', 'ccc', 'bbb', 'aaa']
4
3.4 使用列表时避免索引错误
刚开始使用列表时,经常会遇到一种错误。IndexError: list index out of range
假设你有一个包含三个元素的列表,却要求获取第四个元素
读书笔记「Python编程:从入门到实践」_3.列表简介的更多相关文章
- 读书笔记「Python编程:从入门到实践」_9.类
9.1 创建和使用类 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想. OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 把 ...
- 读书笔记「Python编程:从入门到实践」_11.测试函数
11.1 测试函数 要学习测试,得有要测试的代码.下面是一个简单的函数,它接受名和姓并返回整洁的姓名: def get_formatted_name(first, last): "" ...
- 读书笔记「Python编程:从入门到实践」_10.文件和异常
10.1 从文件中读取数据 10.1.1 读取整个文件 with open(~) as object: contents=object.read() with open('C:/Users/jou/ ...
- 读书笔记「Python编程:从入门到实践」_8.函数
8.1 定义函数 def greet_user(): # def 来告诉Python你要定义一个函数.这是函数定义 """Hello World""& ...
- 读书笔记「Python编程:从入门到实践」_7.用户输入和while循环
7.1 函数input()的工作原理 函数input() 让程序暂停运行,等待用户输入一些文本.获取用户输入后,Python将其存储在一个变量中,以方便你使用. message = input(&qu ...
- 读书笔记「Python编程:从入门到实践」_6.字典
6.1 一个简单的字典 alien_0 = {'color': 'green', 'points': 5} print(alien_0['color']) print(alien_0['points' ...
- 读书笔记「Python编程:从入门到实践」_5.if语句
5.1 一个简单示例 cars = ['audi', 'bmw', 'subaru', 'toyota'] for car in cars: if car == 'bmw': print(car.up ...
- 读书笔记「Python编程:从入门到实践」_4.操作列表
4.1 遍历整个列表 4.1.1 深入地研究循环 4.1.2 在for循环中执行更多的操作 4.1.3 在for循环结束后执行一些操作 例 magicians = ['alice', ' ...
- 读书笔记「Python编程:从入门到实践」_2.变量和简单数据类型
做了大半年RPA了,用的工具是Kapow. 工作没有那么忙,不想就这么荒废着,想学点什么.就Python吧. 为期三个月,希望能坚持下来. 2.1 变量的命名和使用 变量名只能包含字母.数字和下划线. ...
随机推荐
- leetcode 188-maxProfit
public static int maxProfit(int k, int[] prices) { if (0 >= k || null == prices || 1 >= prices ...
- 纯CSS 3D翻转一个面(翻转导航菜单 立方体)
在做练习的时候学到css的翻转导航菜单,原代码有点让人头疼,通过对其css的参数一点点研究了其实现过程. 这里推荐大家研究这个3D翻转动画的代码. 我的github:swarz,欢迎给老弟我++星星 ...
- 9.Spring的IOC+MyBaits+log4j+Servlet
1.创建如下mysql脚本 drop table if exists book_info; create table if not exists book_info( book_id ) primar ...
- [下载]Oracle LOB字段编辑工具
OraLobEditor 是Oracle LOB (CLOB, BLOB) 字段编辑工具. 查看.编辑LOB (CLOB, BLOB)字段(plain text, RTF, image, hex, h ...
- 0209利用innobackupex进行简单数据库的备份
利用innobackupex进行简单数据库的备份yum install perl-DBIyum install perl-DBD-MySQLyum install perl-Time-HiResyum ...
- [bzoj3530][Sdoi2014]数数_AC自动机_数位dp
数数 bzoj-3530 Sdoi-2014 题目大意:给你一个整数集合,求所有不超过n的正整数,是的它的十进制表示下不能再一段等于集合中的任意数. 注释:$1\le n \le 1200$,$1\l ...
- Java IO之简单输入输出
Java中的IO分为两个部分,以InputStream和Reader为基类的输入类,以OutputStream和Writer为基类的输出类. 当中InputStream和OutputStream以字节 ...
- BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers 总结
BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers 总结 本章节向你介绍了SP平台上eve ...
- eclipse+maven的web项目访问jsp乱码
在jsp中第一行加一句这个就不会乱码了 <%@ page language="java" import="java.util.*" pageEncodin ...
- eclipse导入myeclipse中的web项目
场景:在myeclipse编写的一个简单的电信计费系统项目,后面公用到eclipse,想把它给导入到eclipse中 操作:eclipse中在packag explorer空白处右键>impor ...