Python基础教程-字典和集合PPT学习课件
合集下载
python学习课件(共73张PPT)

• ABC是由Guido参加设计的一种教学语言。就Guido本人看来,ABC 这种语言非 常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功, 究其原因,Guido 认为是非开放造成的。Guido 决心在 Python 中避免这一错 误(的确如此,Python 与其它的语言如C、C++和Java结合的非常好)。同 时,他还想实现在 ABC 中闪现过但未曾实现的东西。就这样,Python在 Guido手中诞生了。
Python语言特点-可扩展、动态性
可扩展性
• Python是采用C开发的语言,因此可以使用C扩展Python ,可以给Python添加新的模块、新的类。同时Python 可以嵌入C、C++语言开发项目中,使程序具备脚本 语言的特性。
动态性 • Python与JavaScript、PHP、Perl等语言类似,它不需要
• Python语言具有很强的面向对象特性,而且简化了面向 对象的实现,它消除了保护类型、抽象类、接口等面向 对象的元素,使得面向对象的概念更容易理解。
Python语言特点-内置数据结构
• Python提供了一些内置的数据结构,这些数据结构实现 了类似Java中集合类的功能。内置数据结构的出现简化了 程序设计。
• 工具2to3( • )几乎能将任何Python 2程序自动转换为等价的Python 3程序。
2.Python 基本语法
Python的编码规范
1、命名规则
• Python语言有一套自己的命名规则。命名规则并不 是语法规定,只是一种习惯用法。
(1) 变量名、模块名、包名
• 通常采用小写,可使用下划线。 • 例如:
rulemodule.py #模块名,即文件名 _rule=’rule information’ #_rule变量名,通常前缀有一个
Python语言特点-可扩展、动态性
可扩展性
• Python是采用C开发的语言,因此可以使用C扩展Python ,可以给Python添加新的模块、新的类。同时Python 可以嵌入C、C++语言开发项目中,使程序具备脚本 语言的特性。
动态性 • Python与JavaScript、PHP、Perl等语言类似,它不需要
• Python语言具有很强的面向对象特性,而且简化了面向 对象的实现,它消除了保护类型、抽象类、接口等面向 对象的元素,使得面向对象的概念更容易理解。
Python语言特点-内置数据结构
• Python提供了一些内置的数据结构,这些数据结构实现 了类似Java中集合类的功能。内置数据结构的出现简化了 程序设计。
• 工具2to3( • )几乎能将任何Python 2程序自动转换为等价的Python 3程序。
2.Python 基本语法
Python的编码规范
1、命名规则
• Python语言有一套自己的命名规则。命名规则并不 是语法规定,只是一种习惯用法。
(1) 变量名、模块名、包名
• 通常采用小写,可使用下划线。 • 例如:
rulemodule.py #模块名,即文件名 _rule=’rule information’ #_rule变量名,通常前缀有一个
零基础学Python - 字典的基础PPT

字典的合而提供的一种数据类型
举例:检索学生信息。
“<键><值>对”。 键(即身份证号码) 值(即学生信息)。
“键值对”例子
姓名和电话号码 用户名和密码 国家名称和首都等。
字典的概念
映射: 通过任意键值查找集合中值信息的过程 python中通过字典实现映射 字典是键值对的集合
该集合以键为索引 同一个键信息对应一个值
简单的字典的实例
>>>passwd = {"China":"BigCountry", "Korean":"SmallCountry", "France":"MediumCountry"} >>>print passwd {'Korean': 'SmallCountry', 'China': 'BigCountry', 'France': 'MediumCountry'}
字典类型与序列类型的区别
存取和访问方式不同 键的类型不同
序列类型只能用数字类型的键 字典类型可以用其他对象类型作键
排列方式不同
序列类型保持了元素的相对关系 而字典中的数据是无序排列的。
映射方式不同
序列类型通过地址映射到值 字典类型通过键直接映射到值
举例:检索学生信息。
“<键><值>对”。 键(即身份证号码) 值(即学生信息)。
“键值对”例子
姓名和电话号码 用户名和密码 国家名称和首都等。
字典的概念
映射: 通过任意键值查找集合中值信息的过程 python中通过字典实现映射 字典是键值对的集合
该集合以键为索引 同一个键信息对应一个值
简单的字典的实例
>>>passwd = {"China":"BigCountry", "Korean":"SmallCountry", "France":"MediumCountry"} >>>print passwd {'Korean': 'SmallCountry', 'China': 'BigCountry', 'France': 'MediumCountry'}
字典类型与序列类型的区别
存取和访问方式不同 键的类型不同
序列类型只能用数字类型的键 字典类型可以用其他对象类型作键
排列方式不同
序列类型保持了元素的相对关系 而字典中的数据是无序排列的。
映射方式不同
序列类型通过地址映射到值 字典类型通过键直接映射到值
(完整版)Python学习课件

100%
浮点数类型
浮点数用于表示实数,即带有小 数点的数字。Python中的浮点数 类型通常是双精度浮点数。
80%
数字类型的运算
Python支持基本的数学运算,如 加、减、乘、除和取余等。
字符串类型及操作
字符串定义
字符串是由零个或多个字符组 成的一种数据类型,用引号括 起来表示。
字符串操作
Python提供了丰富的字符串操 作方法,如连接、截取、查找 、替换等。
(完整版)Python学习课件
汇报人:
2023-12-21
目
CONTENCT
录
• Python基础知识 • Python数据类型与运算符 • Python流程控制语句 • Python函数与模块 • Python面向对象编程思想 • Python文件操作与数据处理
01
Python基础知识
Python简介与发展历程
字符串格式化
可以使用格式化字符串来插入 变量或表达式的值,生成动态 的字符串内容。
列表、元组和字典等数据结构
列表
列表是一种有序的数据结构,可 以包含任意类型的元素,且元素
之间可以重复。
元组
元组与列表类似,也是一种有序的 数据结构,但元组是不可变的,即 创建后不能修改。
字典
字典是一种无序的数据结构,用于 存储键值对,其中键必须是不可变 类型(如整数、字符串或元组)。
03
Python流程控制语句
条件语句:if-else结构
if语句
elif语句
用于根据条件判断执行相应的代码块 。
用于在if语句中添加额外的条件判断 。
else语句
与if语句配合使用,当if语句条件不满 足时执行else代码块。
《python学习》课件

while)等。
函数
Python中的函数是一段 可重复使用的代码块, 可以通过函数名来调用
执行。
参数
Python中的函数可以接 受位置参数、默认参数 、可变参数和关键字参
数等。
返回值
Python中的函数可以返 回一个或多个值,通过
return语句返回。
02 Python进阶
Python面向对象编程
03 Python在数据分析中的应用
Python的数据处理工具:Pandas
Pandas介绍
数据读写
Pandas是Python中用于数据处理和分析的 核心库,提供了数据结构和函数,使得数 据清洗、转换和分析变得简单高效。
Pandas支持多种格式的数据读写,如CSV 、Excel、SQL等,方便用户导入导出数据 。
码表达想法。
特点
Python是一种解释型、高级编程 语言,具有动态类型、面向对象和 函数式编程特性。
应用领域
Python广泛应用于Web开发、数据 科学、人工智能、机器学习、网络 爬虫、系统自动化、游戏开发等领 域。
Python的语法和基础数据类型
01
02
03
04
语法
Python的语法简洁明了,代 码块通过缩进来划分,无需使
。
Python数据分析项目:用二
详细描述
掌握数据分析的基本流程和方法,能够使用Python进行数 据清洗、处理、分析和可视化。
了解数据分析的基本概念、流程和方法;掌握Python中常 用的数据分析库,如NumPy、Pandas和Matplotlib等; 学习如何对数据进行清洗、处理、分析和可视化;了解常 见的数据分析模型和方法,如聚类分析、分类和回归分析 等;通过实际案例,掌握用户行为分析的流程和方法,包 括数据采集、处理、分析和可视化等。
函数
Python中的函数是一段 可重复使用的代码块, 可以通过函数名来调用
执行。
参数
Python中的函数可以接 受位置参数、默认参数 、可变参数和关键字参
数等。
返回值
Python中的函数可以返 回一个或多个值,通过
return语句返回。
02 Python进阶
Python面向对象编程
03 Python在数据分析中的应用
Python的数据处理工具:Pandas
Pandas介绍
数据读写
Pandas是Python中用于数据处理和分析的 核心库,提供了数据结构和函数,使得数 据清洗、转换和分析变得简单高效。
Pandas支持多种格式的数据读写,如CSV 、Excel、SQL等,方便用户导入导出数据 。
码表达想法。
特点
Python是一种解释型、高级编程 语言,具有动态类型、面向对象和 函数式编程特性。
应用领域
Python广泛应用于Web开发、数据 科学、人工智能、机器学习、网络 爬虫、系统自动化、游戏开发等领 域。
Python的语法和基础数据类型
01
02
03
04
语法
Python的语法简洁明了,代 码块通过缩进来划分,无需使
。
Python数据分析项目:用二
详细描述
掌握数据分析的基本流程和方法,能够使用Python进行数 据清洗、处理、分析和可视化。
了解数据分析的基本概念、流程和方法;掌握Python中常 用的数据分析库,如NumPy、Pandas和Matplotlib等; 学习如何对数据进行清洗、处理、分析和可视化;了解常 见的数据分析模型和方法,如聚类分析、分类和回归分析 等;通过实际案例,掌握用户行为分析的流程和方法,包 括数据采集、处理、分析和可视化等。
第7章 python字典和集合_python基础,快速入门_课件教程

注意:列表和字典的嵌套层级不应太多,否则有碍程序的简洁性和清晰度。
字典的相关方法 SECTION
字典的相关方法
一、fromkeys()方法 创建一个新字典,其中包含指定的键,而每个键对应的值为None或指定值。 alien = {}.fromkeys(['name', 'age']) {'name': None, 'age': None} alien.fromkeys(['name', 'age'], 'unknown') {'name': 'unknown', 'age': 'unknown'}
集合的使用
二、移除元素 使用remove ()方法,如果元素不存在,则会发生错误。 thisset = set(("Google", "Runoob", "Taobao")) thisset.remove("Taobao") thisset.remove(“Facebook”) #不存在,会报错
使用discard()移除元素,如果元素不存在则不会报错 thisset.discard("Facebook") # 不存在不会发生错误 此外,使用pop() 方法可以随机删除集合中的一个元素。 thisset.pop()
字典的使用
一、添加键值对 字典是一种动态结构,可随时在其中添加键值对。要添加键值对,可依次指定字典名、键及相
关联的值。 alien_0 = {‘color’: ‘green’, ‘points’: 5} alien_0[‘x_position’] = 0 alien_0[‘y_position’] = 25
字典的相关方法 SECTION
字典的相关方法
一、fromkeys()方法 创建一个新字典,其中包含指定的键,而每个键对应的值为None或指定值。 alien = {}.fromkeys(['name', 'age']) {'name': None, 'age': None} alien.fromkeys(['name', 'age'], 'unknown') {'name': 'unknown', 'age': 'unknown'}
集合的使用
二、移除元素 使用remove ()方法,如果元素不存在,则会发生错误。 thisset = set(("Google", "Runoob", "Taobao")) thisset.remove("Taobao") thisset.remove(“Facebook”) #不存在,会报错
使用discard()移除元素,如果元素不存在则不会报错 thisset.discard("Facebook") # 不存在不会发生错误 此外,使用pop() 方法可以随机删除集合中的一个元素。 thisset.pop()
字典的使用
一、添加键值对 字典是一种动态结构,可随时在其中添加键值对。要添加键值对,可依次指定字典名、键及相
关联的值。 alien_0 = {‘color’: ‘green’, ‘points’: 5} alien_0[‘x_position’] = 0 alien_0[‘y_position’] = 25
python基础教程PPT课件

模块与包的使用
模块的创建与导入
模块是一个包含Python代码的文件,通过import语句可以导入模块中的函数和类。
包的创建与使用
包是一个包含多个模块的文件夹,通过import语句可以导入包中的模块。
模块和包的搜索路径
Python解释器会在指定的搜索路径中查找模块和包。
异常处理与调试
01
异常的定义与抛出
1. 数据结构:Pandas提供了多种数据结构
2. 数据处理:Pandas提供了丰富的数据处理函 数。如筛选、排序、聚合、分组等
3. 数据导入导出:Pandas支持多种数据格式的 导入和导出。如CSV、Excel、SQL数据库等
4. 数据可视化:Pandas与Matplotlib库结合 使用,可以方便地将数据处理结果进行可视化 展示。
02
try-except语句块
Python中的异常是由语法或运行时错 误引起的异常情况。
使用try-except语句块可以捕获和处 理异常。
03
logging模块与调试
使用logging模块记录程序运行时的 信息,通过设置不同的日志级别可以 输出不同级别的日志信息,方便调试 程序。
文件操作与数据处理
如何跟上Python发展的步伐
01
关注Python社区的最新动态
Python社区非常活跃,你可以通过参加社区活动、阅读社区新闻和博
客来了解最新的Python动态和技术。
02
学习Python的新特性
Python不断推出新的版本和特性,了解和学习这些新特性和版本可以
帮助你更好地跟上Python的发展步伐。
03
实践
只有通过实践才能真正掌握Python。你可以通过编写代码、参与项目
集合与字典.ppt

... ...
}
但是,在这样定义好类规范并建立的setA所有成 员函数之后,会发现仍然无法建立setA的实例对 象。 例如,如果我们写出下面的变量定义
setA<int> s1; 程序编译时会发生错误,系统将告诉我们:在建 立setA的实例时,遇到了没有给出定义的纯虚函 数void unionWith(const set<int>&)。
举一个例子讨论上面提出的问题。假设我们把 unionWith定义为纯虚函数,函数在类规范里 的原型应该是: virtual void unionWith (const set<T>&) = 0;
在set的实际子类中就必须给出unionWith的实 现,而实际上我们无法给出具有同样函数原型 的函数的实际实现。
// 求并 // 求交 // 求差 // 子集判断 // 相等判断
void deleteAllValues() { slist.deleteAllValues(); };
friend class setListIterator<T>;
};
类9.5 setList类的规范说明
算法与数据结构
19
类setList的构造函数非常自然。其中的无参构造 函数建立空集合,也就是说,建立一个有着空表 slist的集合;复制构造函数建立一个相同的集合, 实际上就是在建立集合时做一次表的复制。这些 函数很容易利用表的构造函数实现。
} }
算法与数据结构
25
removeCurrent是listIterator里定义的方法。显然, 函数remove的时间代价也是O(n)。
算法与数据结构
26
下面看求并集操作的实现。应该注意,setList类的成 员函数unionWith要求它的参数必须是同类型的,也
}
但是,在这样定义好类规范并建立的setA所有成 员函数之后,会发现仍然无法建立setA的实例对 象。 例如,如果我们写出下面的变量定义
setA<int> s1; 程序编译时会发生错误,系统将告诉我们:在建 立setA的实例时,遇到了没有给出定义的纯虚函 数void unionWith(const set<int>&)。
举一个例子讨论上面提出的问题。假设我们把 unionWith定义为纯虚函数,函数在类规范里 的原型应该是: virtual void unionWith (const set<T>&) = 0;
在set的实际子类中就必须给出unionWith的实 现,而实际上我们无法给出具有同样函数原型 的函数的实际实现。
// 求并 // 求交 // 求差 // 子集判断 // 相等判断
void deleteAllValues() { slist.deleteAllValues(); };
friend class setListIterator<T>;
};
类9.5 setList类的规范说明
算法与数据结构
19
类setList的构造函数非常自然。其中的无参构造 函数建立空集合,也就是说,建立一个有着空表 slist的集合;复制构造函数建立一个相同的集合, 实际上就是在建立集合时做一次表的复制。这些 函数很容易利用表的构造函数实现。
} }
算法与数据结构
25
removeCurrent是listIterator里定义的方法。显然, 函数remove的时间代价也是O(n)。
算法与数据结构
26
下面看求并集操作的实现。应该注意,setList类的成 员函数unionWith要求它的参数必须是同类型的,也
python基础知识ppt课件

按照format字符串将str_time转换为时间元组
time_tuple
将时间元组转换为时间戳
seconds
程序休眠若干秒
38
OS库
os 模块封装了常见的文件和目录操作
方法 mkdir rmdir rename
remove
参数 dir_name dir_name src, dst file_name
import <库名> <库名>.<函数名>
或 from <库名> import <函数名> <函数名>
在一个程序中如果引入多个库,而且用到这几个库 中的同一函数时,可以定义并使用库别名,格式为:
import <库名> as <库别名> <库别名>.<函数名>
31
(3)自定义函数要先定义,再调用
练习: 创建求两个数平均值的函数
32
❖ 程序结构
1、分支结构
顺序 分支 循环
双分支结构的语法形式为 if 条件表达式: 语句块 else: 语句块
33
2、循环结构
(1)for 循环(遍历循环 )
通常用range() 函数代替
34
(2)while 循环(条件循环 )
while语句的语法形式为 while 条件表达式: 语句块
Matplotlib库
绘图库,常用其中的pyplot模块 ❖ plt.plot(value_list) ❖plt.plot(x_list, y_list) ❖ plt.show() ❖plt.subplot(row_count, col_count, current_pos)
time_tuple
将时间元组转换为时间戳
seconds
程序休眠若干秒
38
OS库
os 模块封装了常见的文件和目录操作
方法 mkdir rmdir rename
remove
参数 dir_name dir_name src, dst file_name
import <库名> <库名>.<函数名>
或 from <库名> import <函数名> <函数名>
在一个程序中如果引入多个库,而且用到这几个库 中的同一函数时,可以定义并使用库别名,格式为:
import <库名> as <库别名> <库别名>.<函数名>
31
(3)自定义函数要先定义,再调用
练习: 创建求两个数平均值的函数
32
❖ 程序结构
1、分支结构
顺序 分支 循环
双分支结构的语法形式为 if 条件表达式: 语句块 else: 语句块
33
2、循环结构
(1)for 循环(遍历循环 )
通常用range() 函数代替
34
(2)while 循环(条件循环 )
while语句的语法形式为 while 条件表达式: 语句块
Matplotlib库
绘图库,常用其中的pyplot模块 ❖ plt.plot(value_list) ❖plt.plot(x_list, y_list) ❖ plt.show() ❖plt.subplot(row_count, col_count, current_pos)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
21
访问集合元素
遍历集合元素的例子。 s = set('python') for e in s:
print e
22
操作、函数、方法
• 函数 – len
• 方法 – st.add(新元素):添加一个元素 – st.update([元素1,元素2,...元素n]):添加多个元素 – st.remove(元素):删除成员 – st.clear():清空整个集合
5
打印字典
可以直接使用print()函数打印字典,方法如下: print 字典名 打印字典的内容。 >>>d={'name':'小明', 'sex':'男','age':'18', 'score':'80'} >>>print d >>>{'score': '80', 'name': '小明', 'age': '18', 'sex': '男'}
• 差: -, difference
– s=s1-s2 – s=s1.differnce(s2)
25
03 本章新函数
26
本章新函数
• dict(seq)
27
• 操作 – 元素 in st:判断是否成员
23
子集和超集
操作符 ==
!= < <=
> >=
实例 A==B
A!=B A<B A<=B
A>B A>=B
具体描述 如果A等于B,则返回True;否则返回False
如果A不等于B,则返回True;否则返回False 如果A是B的真子集,则返回True;否则返回False 如果A是B的子集,则返回True;否则返回False
19
1.创建集合
创建可变集合的例子。 s = set('python') 创建可变集合的例子。 s = set('python') print type(s) print s
20
不可变集合
s = frozenset('python') 创建不可变集合的例子。 fs = frozenset('python') print type(fs) print fs
16
示例
d={'name':{'first':'Johney','last':'Lee'},'age': 40} print(d['name'][ 'first'])
17
02 集合
18
集合
• 集合由一组无序排列的元素组成,可以分 为可变集合(set)和不可变集合 (frozenset)。可变集合创建后可以添加 元素,修改元素和删除元素。而不可变集 合创建后则不能改变。
print 'key:'+key+ ' value:'+ d[key]
for value in d.values(): # 遍历字典的值 print value
15
字典的嵌套
字典里面还可以嵌套字典,例如 {'name':{'first':'Johney','last':'Lee'},'age' :40} 可以通过下面的方式访问嵌套字典。Байду номын сангаас字典[键][键]
10
添加字典元素
d={'name':'小明', 'sex':'男','age':'18'} d['score'] = '80' print d 运行结果如下: {'sex': '男', 'age': '18', 'name': '小明', 'score': '80'} 列表、元组、字符串如何添加元素?
8
基本字典操作
• len(dct) • dct[key] • dct[key]=val • del dct[key] • key in dct • 注意:
– 键:作为索引标志 – 自动添加: – 成员资格:检查key而不是value
P58 例4-1
9
添加字典元素
可以通过赋值在字典中添加元素,具体方 法如下: 字典[键] = 值 如果字典中不存在指定键,则添加;否则 修改键值。
如果A是B的真超集,则返回True;否则返回False 如果A是B的超集,则返回True;否则返回False
24
集合运算
• 交: &,intersection
– s = s1 & s2 – s=s1.intersection(s2)
• 并: |,union
– s= s1 | s2 – s= s1.union(s2)
12
删除字典元素
使用pop()方法可以删除指定的字典元素,并返回删除的 元素值。具体方法如下: 字典名.pop(键) 使用pop()方法删除字典元素的例子。 d={'age': '18', 'name': '小明', 'score': '80', 'sex': '男'} d.pop('score') print(d) 运行结果如下: {'name': '小明', 'sex': '男', 'age': '18'}
6
访问字典元素
字典由字典元素组成。对字典的管理就是 对字典元素的访问和操作。可以通过下面 的方法获取字典元素的值:
字典名[key]
key是元素的键 注意字典与序列(列表、字符串的使用差 异)
7
示例
d={'name':'小明', 'sex':'男','age':'18', 'score':'80'} print d['name'] print d['sex'] print d['age'] print d['score'] 程序打印列表中索引为0和3的元素,运行结果如下: 小明 男 18 80
11
合并2个字典
可以使用update()函数将2个字典合并,具体方法如下 :
字典1.update(字典2) 合并2个字典 d1={'name':'小明', 'sex':'男'} d2={'age':'18', 'score': '80'} d1.update(d2) print(d1) 运行结果如下: {'age': '18', 'name': '小明', 'score': '80', 'sex': '男'}
Pytho n
第四章 字典和集合
1
字典
集合
目录
小结
Contents
2
01 字典
3
‘姓名’ ‘小明’ ‘性别’ ‘男’ ‘年龄’ ‘18’
4
定义字典
字典元素使用{}括起来,例如,下面的语句可以定义一 个空字典。
d1 = {}; 也可以在定义字典时指定里面的元素,每个元素由键和
值组成,键和值之间由冒号(:)分割,元素间由逗号 (,)分割。例如: d2={'name':'小明', 'sex':'男','age':'18', 'score':'80'}
13
遍历字典元素
可以使用for.. in语句遍历字典的键和值, 方法如下:
for key in 字典.keys(): # 遍历字典的键 访问 字典[key]
for val in 字典.values(): # 遍历字典的值 访问 字典[key]
14
d={'age': '18', 'name': '小明', 'score': '80', 'sex': '男'} for key in d.keys(): # 遍历字典的键
访问集合元素
遍历集合元素的例子。 s = set('python') for e in s:
print e
22
操作、函数、方法
• 函数 – len
• 方法 – st.add(新元素):添加一个元素 – st.update([元素1,元素2,...元素n]):添加多个元素 – st.remove(元素):删除成员 – st.clear():清空整个集合
5
打印字典
可以直接使用print()函数打印字典,方法如下: print 字典名 打印字典的内容。 >>>d={'name':'小明', 'sex':'男','age':'18', 'score':'80'} >>>print d >>>{'score': '80', 'name': '小明', 'age': '18', 'sex': '男'}
• 差: -, difference
– s=s1-s2 – s=s1.differnce(s2)
25
03 本章新函数
26
本章新函数
• dict(seq)
27
• 操作 – 元素 in st:判断是否成员
23
子集和超集
操作符 ==
!= < <=
> >=
实例 A==B
A!=B A<B A<=B
A>B A>=B
具体描述 如果A等于B,则返回True;否则返回False
如果A不等于B,则返回True;否则返回False 如果A是B的真子集,则返回True;否则返回False 如果A是B的子集,则返回True;否则返回False
19
1.创建集合
创建可变集合的例子。 s = set('python') 创建可变集合的例子。 s = set('python') print type(s) print s
20
不可变集合
s = frozenset('python') 创建不可变集合的例子。 fs = frozenset('python') print type(fs) print fs
16
示例
d={'name':{'first':'Johney','last':'Lee'},'age': 40} print(d['name'][ 'first'])
17
02 集合
18
集合
• 集合由一组无序排列的元素组成,可以分 为可变集合(set)和不可变集合 (frozenset)。可变集合创建后可以添加 元素,修改元素和删除元素。而不可变集 合创建后则不能改变。
print 'key:'+key+ ' value:'+ d[key]
for value in d.values(): # 遍历字典的值 print value
15
字典的嵌套
字典里面还可以嵌套字典,例如 {'name':{'first':'Johney','last':'Lee'},'age' :40} 可以通过下面的方式访问嵌套字典。Байду номын сангаас字典[键][键]
10
添加字典元素
d={'name':'小明', 'sex':'男','age':'18'} d['score'] = '80' print d 运行结果如下: {'sex': '男', 'age': '18', 'name': '小明', 'score': '80'} 列表、元组、字符串如何添加元素?
8
基本字典操作
• len(dct) • dct[key] • dct[key]=val • del dct[key] • key in dct • 注意:
– 键:作为索引标志 – 自动添加: – 成员资格:检查key而不是value
P58 例4-1
9
添加字典元素
可以通过赋值在字典中添加元素,具体方 法如下: 字典[键] = 值 如果字典中不存在指定键,则添加;否则 修改键值。
如果A是B的真超集,则返回True;否则返回False 如果A是B的超集,则返回True;否则返回False
24
集合运算
• 交: &,intersection
– s = s1 & s2 – s=s1.intersection(s2)
• 并: |,union
– s= s1 | s2 – s= s1.union(s2)
12
删除字典元素
使用pop()方法可以删除指定的字典元素,并返回删除的 元素值。具体方法如下: 字典名.pop(键) 使用pop()方法删除字典元素的例子。 d={'age': '18', 'name': '小明', 'score': '80', 'sex': '男'} d.pop('score') print(d) 运行结果如下: {'name': '小明', 'sex': '男', 'age': '18'}
6
访问字典元素
字典由字典元素组成。对字典的管理就是 对字典元素的访问和操作。可以通过下面 的方法获取字典元素的值:
字典名[key]
key是元素的键 注意字典与序列(列表、字符串的使用差 异)
7
示例
d={'name':'小明', 'sex':'男','age':'18', 'score':'80'} print d['name'] print d['sex'] print d['age'] print d['score'] 程序打印列表中索引为0和3的元素,运行结果如下: 小明 男 18 80
11
合并2个字典
可以使用update()函数将2个字典合并,具体方法如下 :
字典1.update(字典2) 合并2个字典 d1={'name':'小明', 'sex':'男'} d2={'age':'18', 'score': '80'} d1.update(d2) print(d1) 运行结果如下: {'age': '18', 'name': '小明', 'score': '80', 'sex': '男'}
Pytho n
第四章 字典和集合
1
字典
集合
目录
小结
Contents
2
01 字典
3
‘姓名’ ‘小明’ ‘性别’ ‘男’ ‘年龄’ ‘18’
4
定义字典
字典元素使用{}括起来,例如,下面的语句可以定义一 个空字典。
d1 = {}; 也可以在定义字典时指定里面的元素,每个元素由键和
值组成,键和值之间由冒号(:)分割,元素间由逗号 (,)分割。例如: d2={'name':'小明', 'sex':'男','age':'18', 'score':'80'}
13
遍历字典元素
可以使用for.. in语句遍历字典的键和值, 方法如下:
for key in 字典.keys(): # 遍历字典的键 访问 字典[key]
for val in 字典.values(): # 遍历字典的值 访问 字典[key]
14
d={'age': '18', 'name': '小明', 'score': '80', 'sex': '男'} for key in d.keys(): # 遍历字典的键