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.列表简介的更多相关文章

  1. 读书笔记「Python编程:从入门到实践」_9.类

    9.1 创建和使用类 面向对象编程——Object Oriented Programming,简称OOP,是一种程序设计思想. OOP把对象作为程序的基本单元,一个对象包含了数据和操作数据的函数. 把 ...

  2. 读书笔记「Python编程:从入门到实践」_11.测试函数

    11.1 测试函数 要学习测试,得有要测试的代码.下面是一个简单的函数,它接受名和姓并返回整洁的姓名: def get_formatted_name(first, last): "" ...

  3. 读书笔记「Python编程:从入门到实践」_10.文件和异常

    10.1 从文件中读取数据  10.1.1 读取整个文件 with open(~) as object: contents=object.read() with open('C:/Users/jou/ ...

  4. 读书笔记「Python编程:从入门到实践」_8.函数

    8.1 定义函数 def greet_user(): # def 来告诉Python你要定义一个函数.这是函数定义 """Hello World""& ...

  5. 读书笔记「Python编程:从入门到实践」_7.用户输入和while循环

    7.1 函数input()的工作原理 函数input() 让程序暂停运行,等待用户输入一些文本.获取用户输入后,Python将其存储在一个变量中,以方便你使用. message = input(&qu ...

  6. 读书笔记「Python编程:从入门到实践」_6.字典

    6.1 一个简单的字典 alien_0 = {'color': 'green', 'points': 5} print(alien_0['color']) print(alien_0['points' ...

  7. 读书笔记「Python编程:从入门到实践」_5.if语句

    5.1 一个简单示例 cars = ['audi', 'bmw', 'subaru', 'toyota'] for car in cars: if car == 'bmw': print(car.up ...

  8. 读书笔记「Python编程:从入门到实践」_4.操作列表

    4.1 遍历整个列表   4.1.1 深入地研究循环   4.1.2 在for循环中执行更多的操作   4.1.3 在for循环结束后执行一些操作  例 magicians = ['alice', ' ...

  9. 读书笔记「Python编程:从入门到实践」_2.变量和简单数据类型

    做了大半年RPA了,用的工具是Kapow. 工作没有那么忙,不想就这么荒废着,想学点什么.就Python吧. 为期三个月,希望能坚持下来. 2.1 变量的命名和使用 变量名只能包含字母.数字和下划线. ...

随机推荐

  1. leetcode 188-maxProfit

    public static int maxProfit(int k, int[] prices) { if (0 >= k || null == prices || 1 >= prices ...

  2. 纯CSS 3D翻转一个面(翻转导航菜单 立方体)

    在做练习的时候学到css的翻转导航菜单,原代码有点让人头疼,通过对其css的参数一点点研究了其实现过程. 这里推荐大家研究这个3D翻转动画的代码. 我的github:swarz,欢迎给老弟我++星星 ...

  3. 9.Spring的IOC+MyBaits+log4j+Servlet

    1.创建如下mysql脚本 drop table if exists book_info; create table if not exists book_info( book_id ) primar ...

  4. [下载]Oracle LOB字段编辑工具

    OraLobEditor 是Oracle LOB (CLOB, BLOB) 字段编辑工具. 查看.编辑LOB (CLOB, BLOB)字段(plain text, RTF, image, hex, h ...

  5. 0209利用innobackupex进行简单数据库的备份

    利用innobackupex进行简单数据库的备份yum install perl-DBIyum install perl-DBD-MySQLyum install perl-Time-HiResyum ...

  6. [bzoj3530][Sdoi2014]数数_AC自动机_数位dp

    数数 bzoj-3530 Sdoi-2014 题目大意:给你一个整数集合,求所有不超过n的正整数,是的它的十进制表示下不能再一段等于集合中的任意数. 注释:$1\le n \le 1200$,$1\l ...

  7. Java IO之简单输入输出

    Java中的IO分为两个部分,以InputStream和Reader为基类的输入类,以OutputStream和Writer为基类的输出类. 当中InputStream和OutputStream以字节 ...

  8. BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers 总结

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第12章节--SP 2013中远程Event Receivers  总结         本章节向你介绍了SP平台上eve ...

  9. eclipse+maven的web项目访问jsp乱码

    在jsp中第一行加一句这个就不会乱码了 <%@ page language="java" import="java.util.*" pageEncodin ...

  10. eclipse导入myeclipse中的web项目

    场景:在myeclipse编写的一个简单的电信计费系统项目,后面公用到eclipse,想把它给导入到eclipse中 操作:eclipse中在packag explorer空白处右键>impor ...