Python学习之路-字典的使用

简介: 开发者学堂课程,了解Python语言的基本特性、编程环境的搭建、语法基础、算法基础等,了解Python的基本数据结构,对Python的网络编程与Web开发技术具备初步的知识,了解常用开发框架的基本特性,以及Python爬虫的基础知识。课程地址:https://developer.aliyun.com/learning/course/600/detail/8716

(一)创建字典

1.语法是{k1∶v1,k2:v2,k3∶v3},键与值之间用冒号隔开,多个项之间用逗号隔开,这是键值对的结构。

d={'name':' TOM','age':18,'sex':'男'}

2.我们还可以使用 dict()函数来创建字典

每一个参数都是一个键值对,参数名就是键,参数名就是值

这种方式创建的字典,key 都是字符串

d=dict(name='aa',sex='女',age=19)
print(d,type(d))

得到的结论是:

{'name': 'aa', 'sex': '女', 'age': 19} <class 'dict'>


3.可以将一个包含有双值子序列的序列转换为字典,双值序列就是序列中只有两个值,比如[1,2],('a',3),'ab'。

d=dict([('name','aa'),('age',18)])
print(d,type(d))

得到的结论是:

{'name': 'aa', 'age': 18} <class 'dict'>

(二)“len”获取键值对数量

d=dict([('name','aa'),('age',18)])
print(len(d))    # 2

2个健值对

(三)in 和 not in

“in”是用来检查字典中是否包含指定的键,

“not in”是检查字典中是否不包含指定的键

d=dict([('name','aa'),('age',18)])
print('hello'ind) # Falseprint('name'ind) # True

(四)根据键,获取值

获取字典里的值,需要根据键来获取。语法是 d[key]

通过[]来获取值时,如果键不存在,会抛出异常 KeyError

d=dict([('name','aa'),('age',18)])
print(d['name'])  # aa

还有一种方式获取字典里的值,就是 get(key[,default])

get 这种方式看起来有点麻烦,但是如果获取的键在字典中不存在,会返回 none

d=dict([('name','aa'),('age',18)])
print(d.get('name'))    # aaprint(d.get('bb'))      # None

(五)修改字典

修改字典的语法是 d[key]=value,如果key存在则修改,不存在则添加

d=dict([('name','aa'),('age',18)])
d['name']='孙悟空'print(d)

得到的结论是:{'name': '孙悟空', 'age': 18}


像字典中添加:

d=dict([('name','aa'),('age',18)])
d['sex']='男'print(d)

得到的结论是:{'name': 'aa', 'age': 18, 'sex': '男'}


setdefault,set 是设置,default 是默认,setdefault(key[,default])也可以用来向字典中添加 key-value,如果 key 已经存在于字典中,则返回 key 的值,不会对字典做任何操作;如果 key 不存在,则向字典中添加这个 key,并设置 value。

d=dict([('name','aa'),('age',18)])
result=d.setdefault('name','bb')
print(result)

有name,则返回name的值 aa

d=dict([('name','aa'),('age',18)])
result=d.setdefault('sex','bb')
print(result)

没有sex这个key,则向字典中添加这个key,并返回bbs


update,可将其他字典中的 key-value 添加到当前字典中

aa={"a":1,"b":2,"c":3}
bb={"f":4,"d":5,"e":6}
aa.update(bb)
print(aa)
# 执行后会是包含这两个字典的键值对

{'a': 1, 'b': 2, 'c': 3, 'f': 4, 'd': 5, 'e': 6}

但如果,bb={"c":4,"d":5,"e":6},最后aa 里面的 c 就被 bb替换掉变成4了

相关文章
|
1月前
|
PyTorch Linux 算法框架/工具
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
这篇文章是关于如何使用Anaconda进行Python环境管理,包括下载、安装、配置环境变量、创建多版本Python环境、安装PyTorch以及使用Jupyter Notebook的详细指南。
257 1
pytorch学习一:Anaconda下载、安装、配置环境变量。anaconda创建多版本python环境。安装 pytorch。
|
1月前
|
机器学习/深度学习 人工智能 架构师
Python学习圣经:从0到1,精通Python使用
尼恩架构团队的大模型《LLM大模型学习圣经》是一个系统化的学习系列,初步规划包括以下内容: 1. **《Python学习圣经:从0到1精通Python,打好AI基础》** 2. **《LLM大模型学习圣经:从0到1吃透Transformer技术底座》**
Python学习圣经:从0到1,精通Python使用
|
1月前
|
机器学习/深度学习 缓存 PyTorch
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
这篇文章是关于如何下载、安装和配置Miniconda,以及如何使用Miniconda创建和管理Python环境的详细指南。
379 0
pytorch学习一(扩展篇):miniconda下载、安装、配置环境变量。miniconda创建多版本python环境。整理常用命令(亲测ok)
|
1月前
|
开发者 Python
Python学习九:file操作
这篇文章是关于Python文件操作的详细教程,包括文件的打开、读写、关闭,以及文件备份脚本的编写和文件定位操作。
21 2
|
1月前
|
Java C# Python
Python学习七:面向对象编程(中)
这篇文章是关于Python面向对象编程的中级教程,涵盖了析构函数、对象的三大特征(封装、继承、多态)、类属性与实例属性、以及类方法与静态方法的对比。
22 2
|
1月前
|
设计模式 安全 JavaScript
Python学习八:面向对象编程(下):异常、私有等
这篇文章详细介绍了Python面向对象编程中的私有属性、私有方法、异常处理及动态添加属性和方法等关键概念。
22 1
|
1月前
|
存储 Java 编译器
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
这篇文章是关于Python编程语言中变量命名规则、基本数据类型、算数运算符、比较运算符、逻辑运算符、赋值运算符以及格式化输出与输入的详细教程。
20 0
Python学习三:学习python的 变量命名规则,算数、比较、逻辑、赋值运算符,输入与输出。
|
1月前
|
资源调度 前端开发 JavaScript
Python学习二:Python包管理器pip
这篇文章介绍了Python包管理器pip的基本概念、基本操作、如何更改下载源为国内镜像以加速下载,以及如何指定安装包的位置。
42 0
Python学习二:Python包管理器pip
|
1月前
|
机器学习/深度学习 人工智能 架构师
|
1月前
|
机器学习/深度学习 缓存 Linux
python环境学习:pip介绍,pip 和 conda的区别和联系。哪个更好使用?pip创建虚拟环境并解释venv模块,pip的常用命令,conda的常用命令。
本文介绍了Python的包管理工具pip和环境管理器conda的区别与联系。pip主要用于安装和管理Python包,而conda不仅管理Python包,还能管理其他语言的包,并提供强大的环境管理功能。文章还讨论了pip创建虚拟环境的方法,以及pip和conda的常用命令。作者推荐使用conda安装科学计算和数据分析包,而pip则用于安装无法通过conda获取的包。
72 0