python学习笔记——集合与字典
python学习笔记——集合与字典
- 1. 集合的基本概念
- 1.1 set(x)函数
- 1.2 集合类型的10个操作函数
- 2. 字典的基本概念
- 2.1 字典的索引
- 2.2 字典的操作
- 2.3 字典小结
1. 集合的基本概念
集合类型和数学集合中的概念一致,即包含0个或多个数据项的无序组合。集合元素不可重复,集合类型只能是固定的数据类型。
python编译器中界定固定数据类型与否主要考察类型能否进行哈希运算。python中提供了一种同名的具体数据类型——集合(set)
由于集合是无序组合,他没有索引和位置的概念,不能分片,集合中元素可以动态增加或删除。
集合用大括号表示,可以用赋值语句生成一个集合,例如:
>>> s = {1,'dream',2,2,(3,4)}
>>> s
{1, 2, (3, 4), 'dream'}
通过集合元素的独一无二性,可以过滤掉重复元素,这也是集合的很大一个用处。
1.1 set(x)函数
set(x)函数可以用于生成集合,输入的参数可以是任何组合数据类型,返回结果是一个无重复且排序任意的集合。
1.2 集合类型的10个操作函数
操作函数及方法 | 描述 |
---|---|
s.add(x) | 如果数据项x不在集合中,则增加x到s中 |
s.clear() | 移除s中所有的数据项 |
s.copy() | 返回集合s的一个副本 |
s.pop() | 随机返回s中的一个元素,如果集合为空,返回KeyError异常 |
s.discard(x) | 如果x在集合中移除该元素,不在不报错 |
s.remove(x) | 如果x在集合中移除该元素,不在返回KeyError异常 |
s.isdisjoint(T) | 如果s和T没有相同的元素,返回True |
len(s) | 返回s中元素的个数 |
x (not) in s | x(不是)是s的元素,返回相应的判断 |
2. 字典的基本概念
通过任意键信息查找一组数据中 值的信息的过程叫映射,python语言中通过字典实现映射。python语言中的字典可以用大括号建立,建立模式如下:
{<键1>:<值1>,<键2>:<值2>,...,<键n>:<值n>}
由于大括号表示集合,因此字典类型和集合有着类似的性质,即键值对之间没有顺序且不能重复。
2.1 字典的索引
字典中键值对的访问模式如下,采用中括号格式:
<值> = <字典变量>[<键>]
例如:
>>> D = {'China':'BeiJing','France':'Paris','USA':'Washington DC'}
>>> D['China']
'BeiJing'
字典中对某个键值的修改可以通过中括号的访问和赋值实现,例如:
>>> D['USA']='NK'
>>> print(D)
{'China': 'BeiJing', 'France': 'Paris', 'USA': 'NK'}
总结起来,字典是储存可变数量键值的数据结构,键和值可以是任意数据类型,包括程序自定义的类型。python字典的效率非常高,可以储存几十万项的内容。
2.2 字典的操作
可以直接使用大括号创建一个空的字典,并通过中括号向其中增加元素。
>>> d = {}
>>> d['2^2']=4
>>> print(d)
{'2^2': 4}
注:直接使用大括号生成的是字典,生成空集合需要使用函数set()
函数和方法 | 描述 |
---|---|
d.keys() | 返回所有的键的信息 |
d.values() | 返回所有值的信息 |
d.items() | 返回所有的键值对 |
d.get(key,default) | 键存在返回相应值,否则返回默认值 |
d.pop(key,default) | 键存在返回相应值,同时删除键值对,否则返回默认值 |
d.popitem() | 随机从字典中取出一个键值对,以元组(key,value)形式返回 |
d.clear() | 删除所有的键值对 |
del d[key] | 删除字典中某个特定的键值对 |
key in d | 如果键在字典中返回True,不存在返回False |
与其他组合类型一样,字典可以通过for-in语句对其元素进行遍历,语法结构如下:
for <变量名> in <字典名>:<语句块>
由于键值对中的键相当于索引,因此,for循环返回变量名是字典的索引值。如果需要获得键对应的值,可以在语句块中通过get()方法获得。
>>> D = {'China':'BeiJing','France':'Paris','USA':'Washington DC'}
>>> for key in D:print(key)China
France
USA
2.3 字典小结
字典是实现键值对映射的数据结构,它采用固定数据类型的键数据作为索引,十分灵活,具有处理任意长度、混合类型键值对的能力。为了更好地认识和使用字典,请理解如下一些基本原则。
(1)字典是一个键值对的集合,该集合以键为索引,一个键信息只对应一个值信息。
(2)字典中元素以键信息为索引访问。
(3)字典长度是可变的,可以通过对键信息赋值实现增加或修改键值对。
python学习笔记——集合与字典相关推荐
- Python学习笔记D8(字典与集合)
Python学习笔记D8(字典与集合) 「字典」定义语法为 {元素1, 元素2, -, 元素n} 其中每一个元素是一个「键值对」- 键:值 (key:value)关键点是「大括号 {}」,「逗号 ,」 ...
- Python学习笔记 | 列表和字典
基于Python3版本的学习. 列表 用中括号[ ]把里面的各种数据框起来,里面的每一个数据叫作"元素". 每个元素之间都要用英文逗号隔开. list1=['小明',18,1.70 ...
- python学习笔记之三:字典,当索引不好用时
字典是python中唯一内建的映射类型.字典中的值并没有特殊的顺序,但是都存储在一个特定的键(key)里. 键可以是数字,字符串甚至是元组. 1. 创建和使用字典 字典可以通过下面的方式创建: pho ...
- python 学习笔记 - for循环: 字典遍历, 分别打印key, value, key:value
#遍历字典, 分别打印key, value, key:value emp = {'name':'Tom', 'age':20, 'salary' : 8800.00}for k in emp.keys ...
- Python学习笔记:列表、字典与集合解析(List, Dict and Set Comprehensions)
Python学习笔记:列表.字典与集合解析(List, Dict and Set Comprehensions) 1.列表解析 最受喜爱的Python语言特性.过滤一个集合的元素生成一个新的列表. 一 ...
- Python学习笔记:集合(set)
Python学习笔记:集合(set) 1.集合概念 集合是互异元素的无序集合.类似于只有键没有值的字典. 2.创建集合 有两种方法创建集合:一个是利用set函数,一个是利用花括号创建集合字面量. 3. ...
- Python学习笔记:字典(dict)
Python学习笔记:字典(dict) 字典(dict)可能是最重要的Python内置数据结构,更常用的名称是哈希映射(hash map)或关联数组(associate array).它是键值对的集合 ...
- python学习笔记(六)字典
python学习笔记(六)字典 1.字典初见 python中的字典实际上就是一系列的"键-值"对(key-value),它们之间时无序的,每一个键都必须有与之对应的值,这个值可以是 ...
- 廖Python学习笔记一
1. 廖Python学习笔记 大的分类 如函数 用二级标题,下面的用三级 如输入输出 1.1.1. 输入输出 1.1.1.1. 输出 用 print() 在括号里加上字符串,就可以向屏幕上输出指定的文 ...
最新文章
- clob存base64文件存不进去_Kafka 和 RocketMQ 底层存储之那些你不知道的事
- ASP.NET Core 异常重试组件 Polly
- idea springBoot 配置devtools实现热部署
- express下使用ES6 - dtdxrk - 博客园
- python局部静态变量_全局变量、局部变量和静态变量
- matlab进行多光栅衍射仿真,光栅衍射MATLAB仿真.docx
- proteus 中89c51芯片如何显示vcc和gnd
- Oracle之同义词
- python 语言基本知识2:数据结构
- 最新自己怎么建网站零基础教程-李廷学
- 【转】解决win10系统每次重启桌面图标排列混乱的问题!亲测有效!!
- struts1 标签
- 关于Windows的window
- 商店管理系统的设计与实现
- 【arcpy批量制图】符号系统的色带、小数点设置
- 沪江计算机考研老师,[回报沪江]从六级370到考研74,我的08研英之路[原创].doc
- 一个简单的步骤让你的 Python 代码更干净
- ubuntu安装nvidia显卡驱动(双显卡)
- 【Python网络爬虫】前程无忧网爬虫+可视化
- 嵌入式新手学习路线,嵌入式课程学习