12.从入门到精通:Python字典,创建字典,访问字典的值,修改字典,删除字典,字典键的特性,字典内置函数和方法

  • Python字典
    • 创建空字典
    • 访问字典里的值
    • 修改字典
    • 删除字典元素
    • 字典键的特性
    • 字典内置函数&方法

Python字典

在Python中,字典是一种无序、可变的数据类型,用于存储键值对。字典中的每个键都与一个值相关联,可以使用键来访问对应的值。键必须是唯一的,而值可以是任何类型的对象。字典用大括号 {} 来表示,其中每个键值对之间用逗号分隔。
以下是一个字典的示例:

my_dict = {"apple": 2.99, "banana": 0.99, "orange": 1.49}

在这个示例中,“apple”、"banana"和"orange"是键,它们分别对应的值为2.99、0.99和1.49。

可以使用以下方法来操作字典:

  • 访问字典中的值:使用键来访问对应的值,例如my_dict[“apple”]将返回2.99。
  • 添加或修改键值对:使用新的键来添加键值对,或使用现有的键来修改对应的值,例如my_dict[“pear”] =
    1.99将添加一个新的键值对"pear":1.99,而my_dict[“apple”] = 1.49将修改现有的键"apple"对应的值为1.49。
  • 删除键值对:使用del语句来删除指定的键值对,例如del my_dict[“banana”]将删除键"banana"对应的值0.99。
  • 获取所有键或值:使用keys()方法来获取所有的键,使用values()方法来获取所有的值,例如my_dict.keys()将返回一个包含所有键的列表,而my_dict.values()将返回一个包含所有值的列表。
  • 获取键值对:使用items()方法来获取所有的键值对,例如my_dict.items()将返回一个包含所有键值对的列表,每个键值对都表示为一个元组。

需要注意的是,字典是无序的,因此不能使用索引来访问其中的元素。如果需要按照特定顺序访问字典中的元素,可以使用sorted()函数来对键进行排序。

创建空字典

在 Python 中,可以使用以下两种方法来创建空字典:

使用大括号 {}:

my_dict = {}

使用 dict() 函数:

my_dict = dict()

这两种方法都可以创建一个空字典。需要注意的是,由于字典是可变的,因此在创建后可以向其中添加键值对
例如,可以使用以下代码向空字典中添加一个键值对:

my_dict = {}
my_dict["key"] = "value"

这将创建一个新的键值对,键为"key",值为"value"。

访问字典里的值

在 Python 中,可以通过使用键来访问字典中的值。例如,假设有一个字典,其中包含一些水果的价格,可以使用以下代码来访问"apple"的价格:

fruit_prices = {"apple": 0.99, "banana": 0.59, "orange": 0.79}
apple_price = fruit_prices["apple"]
print(apple_price)  # 输出 0.99

在这个示例中,使用方括号 []来访问字典中的值,其中方括号内为键。将键"apple"传递给方括号,将返回对应的值0.99,然后将其赋值给变量apple_price。可以使用类似的方法来访问任何其他键的值。如果尝试访问不存在的键,则会引发KeyError异常。

修改字典

在 Python 中,可以使用键来添加、修改或删除字典中的键值对。

添加键值对:可以使用新的键来添加键值对,例如:

my_dict = {"apple": 2.99, "banana": 0.99}
my_dict["pear"] = 1.99
print(my_dict)  # 输出 {"apple": 2.99, "banana": 0.99, "pear": 1.99}

修改键值对:可以使用现有的键来修改对应的值,例如:

my_dict = {"apple": 2.99, "banana": 0.99}
my_dict["apple"] = 1.49
print(my_dict)  # 输出 {"apple": 1.49, "banana": 0.99}

删除键值对:可以使用del语句来删除指定的键值对,例如:

my_dict = {"apple": 2.99, "banana": 0.99}
del my_dict["banana"]
print(my_dict)  # 输出 {"apple": 2.99}

需要注意的是,如果尝试使用不存在的键来访问字典中的值,将引发KeyError异常。

删除字典元素

在Python中,可以使用del语句删除字典中的元素。例如,如果我们有一个名为my_dict的字典,想要删除键为’key1’的元素,可以使用以下代码:

del my_dict['key1']

如果我们不确定字典中是否存在该键,可以使用pop()方法。例如,如果我们想要删除键为’key2’的元素,但是不确定该键是否存在,可以使用以下代码:

my_dict.pop('key2', None)

这将尝试删除键为’key2’的元素,如果该键不存在,则不会发生任何事情。

字典键的特性

在Python中,字典的键必须是不可变的对象。这是因为字典是基于哈希表实现的,哈希表的实现需要使用键的哈希值来查找和存储对应的值。如果键是可变的对象,那么在修改键时,它的哈希值也会发生变化,这将导致在哈希表中无法正确地查找和存储对应的值。因此,Python中允许用字符串、数字、元组等不可变类型作为字典的键,但不允许使用列表、字典等可变类型作为键。

例如,以下代码将引发TypeError异常:
my_dict = {[1, 2]: ‘value’}

在这里插入代码片

如果需要使用可变类型作为键,可以考虑使用元组或自定义类型等不可变类型来代替。

字典内置函数&方法

在Python中,字典是一个非常有用的数据类型,提供了许多有用的内置函数和方法来操作它们。以下是一些常用的字典内置函数和方法:
内置函数

len(dict):返回字典中键值对的数量。
str(dict):将字典转换为字符串。
type(variable):返回变量的数据类型,如果是字典,则返回dict。

方法

  • clear():删除字典中的所有元素。
  • copy():返回字典的副本。
  • get(key, default=None):返回键对应的值。如果键不存在,则返回默认值。
  • items():返回一个包含所有键值对的元组列表。
  • keys():返回一个包含所有键的列表。
  • pop(key, default=None):删除键对应的值,并返回该值。如果键不存在,则返回默认值。
  • popitem():删除并返回字典中的任意键值对。
  • setdefault(key, default=None):返回键对应的值。如果键不存在,则插入键值对并返回默认值。
  • update(dict2):将字典2中的键值对添加到字典1中。
  • values():返回一个包含所有值的列表。

这些函数和方法可以让我们更轻松地操作和处理字典数据。

12.从入门到精通:Python字典,创建字典,访问字典的值,修改字典,删除字典,字典键的特性,字典内置函数和方法相关推荐

  1. python内置函数及方法_python 内置函数 应用及方法

    一.主要内容: 1.内置函数 什么是内置函数? 就是python给你提供的. 拿来直接⽤的函数, 比如print., input等等. 截⽌ 到python版本3.6.2 python⼀共提供了68个 ...

  2. python编程内置函数使用方法_python编程(4)--内置函数

    ​     函数,通常称为方法,是一种将自变量到因变量的映射(y = f(x)).在python里用def或者lambda去构造,语法如下. def f(x):      #x -- 输入 y = x ...

  3. python编程内置函数使用方法_Python内置函数 next的具体使用方法

    Python 3中的File对象不支持next()方法. Python 3有一个内置函数next(),它通过调用其next ()方法从迭代器中检索下一个项目. 如果给定了默认值,则在迭代器耗尽返回此默 ...

  4. string是python内置函数吗_Python 字符串与内置函数(方法)

    一.字符串 1.字符串定义 a.定义时用成对双引号或成对单引号 b.也可以用成对的三个双引号或成对的三个单引号定义字符串(定义的字符串用包含单引号或双引号时可以用这个方法) c.字符串中间有单引号时, ...

  5. python函数isdisjoint方法_Python学习之---Python中的内置函数(方法)(更新中。。。)...

    add(item)#将item添加到s中,如果item已经在s中,则无任何效果 break#退出循环,不会再运行循环中余下的代码 bool()#将参数转换为布尔型 bytes()#将值转成bytes类 ...

  6. python 内置函数_python的内置函数、方法

    1.input() 输入内容时要将内容用引号引起来: input('请输入密码:') input("请输入登录名:") name = input('请输入姓名:') print(' ...

  7. python的内置函数string_Python错误:内置函数或方法对象没有属性“StringIO”

    我只想下载一张图片.然后上传到Amazon S3.但它不起作用.在'builtin_function_or_method' object has no attribute 'StringIO' Tra ...

  8. 《Python 1》--python的简介、解释器、读取键盘输入函数、变量类型推断、5个标准数据类型、字符串的内置函数、for循环、list列表、tuple元组、字典dictionary

    Python 的起源: Python 的创始人为吉多·范罗苏姆(Guido van Rossum) 1. 1989 年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的**解释程序 ...

  9. python内置函数open_Python的内置函数open()的注意事项

    用法 : open("file_address","open_mode") 例子 : f = open("D:\PycharmProjects\log ...

最新文章

  1. Scapy脚本执行出现警告WARNING解决办法
  2. 放眼2018年,我们对虚拟现实产品有五大疑问
  3. apache mysql 连接数 winnt,APACHE PHP MYSQL PHPMYADMIN超详细配置教程
  4. 实用Java程序设计教程_java程序设计实用教程 书中代码.pdf
  5. 批量获取域名解析地址socketthread
  6. 中邮智递通过数加和datav将系统和服务迁移到大数据平台
  7. JAR包命令解压以及再命令打包
  8. The Rise of Worse Is Better 论文-学习笔记
  9. 【Java数据结构与算法】第十七章 二分查找(非递归)和分治算法(汉诺塔)
  10. 三个瓶盖能换一瓶水,问100个人需要喝水,最少需要买多少瓶水即可解决100人的喝水问题
  11. 主题目录检索是什么举例子_网络信息资源检索与利用第二次作业
  12. 又延伸到socket去了。
  13. 学业奖惩系统c语言,c语言成绩管理系统(完整).doc
  14. Lync Server 2010下载拓扑报错分析及解决方法分享
  15. Java锁synchronized关键字学习系列之CAS和对象头
  16. Linux stress命令详解
  17. AI智能识别盒 智能识别垃圾分类
  18. RandomAccessSource not opened
  19. 手机端编程以及mgit工具使用
  20. 如何使用Windows10自带的photo应用给视频添加字幕

热门文章

  1. i78700k配什么显卡好_2017酷睿i7-8700K配GTX1070Ti配置推荐
  2. 教你如何制作APP 赚钱
  3. python语言的数学模块是什么_python math数学模块
  4. 【字符串】最长无重复字符子串练习题
  5. whatsApp皮肤配置流程
  6. wow stsm 宏
  7. twitch youtube 聊天获取
  8. 唯品会二级分销+小程序:下一站,社交电商?
  9. 「 Word 」修改Mathtype编辑器插入公式的编号
  10. 道家真言html代码