- 1、本文档共16页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
组合数据对象-1
组合数据对象
为什么需要?有什么用?
list (表)
表的构造
表的基本操作
用表解决问题(编程实例)
计算概论(Python程序设计) 裘宗燕,2015/4/15//-1-
组合数据
在程序里,用变量保存计算得到的(中间)结果
在后续计算中使用,或作为最终结果输出
维护一些信息,支持计算过程的进行
在前面程序中,变量里保存都是基本类型的数据
如整数、浮点数、字符串等
每个变量是有名字的独立个体,不同变量互不相关
计算中也经常希望能统一地掌握一批数据。例如
记录一个整数的所有素因子
记录条钢切分中各长度分段的安排
保存一个向量或一个矩阵的所有元素
等等
计算概论(Python程序设计) 裘宗燕,2015/4/15//-2-
组合数据
可以定义多个变量保存多项数据,但这种做法不适合有些情况:
需要保存的数据值数量不定
需要写循环以统一方式逐个处理这些变量的值
需要把一组不定数量的值送进函数或作为函数返回值
如过能用一个变量记录一组数据,就能方便地处理这些问题
需要组合数据对象,其值包含一批更基本的元素
希望组合对象能像简单对象一样赋给变量,传进传出函数;
希望能个别地处理或以统一方式处理其成分(数据)
对组合数据对象的希望:
能包装起一批元素,可以访问和使用其中的元素
又能作为一个整体保存、传递和使用
计算概论(Python程序设计) 裘宗燕,2015/4/15//-3-
组合数据对象:表(list)
Python 提供了多种组合数据的机制
其中最常用的是 list (表,列表),list 是类型名
其他机制后面介绍
list 是Python 的一种内置的序列类型
一个表对象可包含一组元素,如 [1, 2, 3]
没有元素的表称为空表,用[ ] 表示
作为序列类型的对象,每个元素在表中有确定的位置(下标)
通过下标表达式访问表元素。下标表达式里可以包含变量,
实际访问的元素由表达式的值确定
表对象可以作为变量的值,可以作为函数的参数和返回值。
程序里可以通过变量和函数实现对表对象的操作
计算概论(Python程序设计) 裘宗燕,2015/4/15//-4-
表的构造和操作
可以通过直接描述建立新的表,还可以通过操作构造新表
用[...] 直接描述,以表达式的形式列出表元素,逗号分隔
例:[ ] 得到空表,[1, 2, 3] 得到一个包含三个整数的表
如果表元素很少,比较方便
如果各元素之间没有关系,没有统一的描述方式
元素可以写任意表达式,建立表时以表达式的值作为元素
表的最基本操作是元素取值和赋值
表元素用下标表达式描述
表 lst 的元素下标从0 到len(lst) - 1 (注意,表是一种序列)
lst[2] 取得lst 里位置2 (下标为2 )的元素
lst[2] = a 把lst 里下标为2 的元素改为字符串2
计算概论(Python程序设计) 裘宗燕,2015/4/15//-5-
表的构造和操作
用list(...) 构造(是做类型转换)
list 的参数应该是一个序列或者迭代器
list(abc) 得到的表相当于写 [a, b, c]
可以利用range 构造顺序值有规律的表。例:
list(range(100)) 得到的表里按顺序包含元素0, 1, …, 99
如果参数不是序列或迭代器,用 list 转换将出错
lis
文档评论(0)