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. css实现多行文字限制显示&编译失效解决方案

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ...

  2. Ecshop模板中html_options用法详解

    程序部分 <?php $smarty->assign('status_list', $_LANG['cs']); // 订单状态 $smarty->display("ind ...

  3. sqlalchemy根据表名动态创建model类

    作用如题,直接上代码吧,另外还支持 copy一张表的表结构,新建表并获得model对象 # coding: utf-8 import traceback from sqlalchemy import ...

  4. Nginx学习总结(1)——Nginx入门简介

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理.废话不多,直接开始. 1.静态HTTP服务器 首先,Nginx是一个HTTP服务器,可以将服务器上的静态文 ...

  5. POJ 3076

    DLX算法,刚接触,是关于精确覆盖的,白书上有算法介绍. 代码模板 #include <iostream> #include <cstdio> #include <cst ...

  6. javap命令

    javap命令 学习了:https://www.cnblogs.com/frinder6/p/5440173.html javap命令查看java类的字节码: 对于synchronized块,可以显示 ...

  7. javascript基础篇--function类型(上)

    在js中,function类型实际上是对象,每一个函数都是function类型的一个实例.并且与其它引用类型一样具有属性和方法. 声明 1普通方式 Function sum(num1,num2) { ...

  8. 高速学会Mac上托管代码到github(具体解释)

    之前最開始的时候就一直在github浏览下载各种代码,然后弄了一下代码上传不知道咋弄就不了了之了.刚好近期有空余时间就研究了下github托管代码,这里就具体说说怎样高速的学会github上传你的代码 ...

  9. sqlalchemy.orm.exc.flusherror:错误解决

    使用sqlalchemy创建model 初次代码: class UserModel(db.Model): __tablename__ = "users" id = db.Colum ...

  10. 什么是鸭子类型(duck typing)

    "当看到一仅仅鸟走起来像鸭子.游泳起来像鸭子.叫起来也像鸭子,那么这仅仅鸟就能够被称为鸭子." 我们并不关心对象是什么类型,究竟是不是鸭子,仅仅关心行为. 比方在python中.有 ...