python列表和字典的特征及应用

python列表和字典的特征及应用

  • 列表
    • 一、列表的特征
    • 二、列表的操作
      • 1、迭代和解析
      • 2、索引、分片、矩阵
      • 3、列表的方法调用
  • 字典
    • 一、字典的性质
    • 二、字典的操作
      • 1、原处修改
      • 2、方法调用
      • 3、字典用法注意事项

python学习手册(第四版)学习笔记(四)
第 8 章 列表与字典

列表

一、列表的特征

  • 任意对象的有序集合;
  • 通过偏移读取;
  • 属于可变序列,也就是可以原地修改。这有别于字符串,字符串属于不可变序列,字符串不可以在原地修改。所以对序列的一些操作在这两者的某些地方不同;
  • 可变长度、异构和嵌套
    表8-1 常用列表常量与操作(p244)
    更多课查阅python标准库手册;或者help(list)或dir(list)查看list方法

二、列表的操作

1、迭代和解析

涉及到的迭代和解析都与for有关。
所以推迟再讲
这一部分也是列表的更高级操作

2、索引、分片、矩阵

  • 对列表的索引和分片与字符串相同,对列表进行分片返回一个新的列表;对字符串分片会生成一个新的对象
  • 列表是可变序列,可以对其直接原地修改。而对于字符串这种不可变序列来说,需要建立一个新的拷贝(比如合并、切片)
  • 原地修改的意思是:直接修改,不会生成一个新的列表作为结果

python列表和字典的特征及应用_第1张图片

3、列表的方法调用

python程序员更喜欢用的方式

  • help(list) 或 dir(list)来查看列表的方法
  • python手册
  • 《Python Pocket Reference》

字典

一、字典的性质

  • 字典是可变的无序集合,而列表是有序集合
  • 字典是通过键来存取,而列表通过偏移量
  • 任意对象
  • 可变长、异构、任意嵌套
  • 属于映射类型,这意味着不可以使用序列的操作(比如对字符串、列表等序列的操作)
  • 从本质上来收,字典是作为散列表来实现的。而对于列表来说,则是数组来实现
  • 散列表是支持快速检索的数据结构
  • 字典中键的顺序是随意的,这是为了可以快速查找
    表8-2(p254)

二、字典的操作

1、原处修改

字典也是可变的,每当对字典键进行赋值(之前并没有被赋值的键),字典内就会生成一个新的元素。

2、方法调用

python库手册
help(dict)

3、字典用法注意事项

  • 字典无法用一个简单的for语句来迭代。可以调用key方法,或者使用for语句打印键,再在for循环中嵌入dict[key]
  • 序列运算无效,因为字典是 映射类型,是无序的。所以有序的序列运算没有用,并且会报错
  • 键不一定总是字符串,任何不可变对象都可以
  • 对于列表来说,对列表末尾外的偏移量赋值时会报错;而对字典的键赋值时(此键未被赋值)会产生新的键值对,而不会报错。说明字典比列表更灵活。如下:
  • python列表和字典的特征及应用_第2张图片
  • 如果想要应用列表或显示他们的值,则需要内置的list方法:

python列表和字典的特征及应用_第3张图片

你可能感兴趣的:(python学习笔记,列表,python,字典)