百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

DAY2-step2 如何使用Python的字典

off999 2024-11-02 12:32 27 浏览 0 评论


Python中的字典是什么?

PYTHON中的字典是保存键值对的无序且可变的数据集合。 字典中的每个键值对都将键映射到其关联值。 python中的字典是通过使用花括号{}括起来,并且以逗号分隔的键/值对列表来声明的。 Python字典分为两个元素,键和值。

  • 键将是一个元素
  • 值可以是列表,也可以是列表中的列表,数字等。

Python字典的语法:

Dict = { ' Tim': 18,  'Charlie':12,.. }

字典key的属性

使用字典键时有两个要点

  • 每个key不允许多个条目(就是说,不允许重复的key)
  • 字典中的值可以是任何类型,而键必须是不变的,例如数字,元组或字符串。
  • 字典key是区分大小写的。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print (Dict['Tiffany'])

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print((Dict['Tiffany']))
  • 在代码中,我们有字典叫“ Dict”
  • 我们在字典中声明了此人的姓名和年龄,其中姓名为“键”,年龄为“值”
  • 运行代码,它将从字典中检索Tiffany的年龄。

复制字典

您也可以将整个词典复制到新词典中。 例如,在这里,我们已将原始词典复制到新的词典“ Boys”和“ Girls”。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print studentX
print studentY

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
studentX=Boys.copy()
studentY=Girls.copy()
print(studentX)
print(studentY)
  • 我们有原始的字典Dict,其中包含男孩和女孩的名字和年龄
  • 但是我们希望男孩与女孩分开,因此我们在单独的字典“Boys”和“Girls”中定义了男孩和女孩的元素。
  • 现在,我们再次创建了新的词典“ studentX”和“ studentY”,其中将Boys词典的所有键和值都复制到了StudentX中,并将Girls复制到了studentY中
  • 因此,现在您不必查看主字典(Dict)中的整个列表来检查谁是男孩,谁是女孩,您只需要打印出StudentX(如果想要男孩列表)和StudentY(如果想要女孩列表)即可
  • 因此,当您打印studentX和studentY词典时,它将分别给出词典中出现的所有元素“ boys”和“ girls”

更新字典

您还可以通过将新条目或键值对添加到现有条目或删除现有条目来更新字典。 在示例中,我们将在现有字典中添加另一个“ Sarah”。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print Dict

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
Dict.update({"Sarah":9})
print(Dict)
  • 我们现有的字典“ Dict”没有“ Sarah”。
  • 我们使用方法Dict.update将Sarah添加到我们现有的字典中
  • 现在运行代码,它将Sarah添加到我们现有的字典中

从字典中删除key

Python字典使您可以自由地从字典列表中删除任何元素。 假设您不想在列表中使用名称Charlie,因此可以通过以下代码删除key元素。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print Dict

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
del Dict ['Charlie']
print(Dict)

当您运行此代码时,它应打印不带Charlie的字典列表。

  • 我们使用了代码del Dict
  • 执行代码后,它已从主词典中删除了Charlie

字典items()方法

items()方法返回字典中的元组对(键,值)列表。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Students Name: %s" % Dict.items()

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Students Name: %s" % list(Dict.items()))
  • 我们为Dict使用代码items()方法。
  • 执行代码后,它将返回字典中的item列表(键和值)

检查字典中是否存在给定键

对于给定的字典,您还可以检查主词典中是否存在我们的子词典。 在这里,我们有两个子词典“ Boys”和“ Girls”,现在我们要检查字典“ Boys”是否存在于主要的“ Dict”中。 为此,我们将for循环方法与else if方法一起使用。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in Dict.keys():
    if key in Boys.keys():
        print True
    else:       
        print False

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
for key in list(Dict.keys()):
    if key in list(Boys.keys()):
        print(True)
    else:       
        print(False)
  • 代码中的for循环检查主字典中的每个键是否有Boys的键
  • 如果它存在于主字典中,则应打印true,否则应打印false
  • 当您执行代码时,它会打印“ True”三遍,因为“ Boys”字典中有三个元素

字典排序

在字典中,您还可以对元素进行排序。 例如,如果要按字母顺序打印字典元素的名称,则必须使用for循环。 它将相应地对字典的每个元素进行排序。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = Dict.keys()
Students.sort()
for S in Students:
      print":".join((S,str(Dict[S])))

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}
Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}
Students = list(Dict.keys())
Students.sort()
for S in Students:
      print(":".join((S,str(Dict[S]))))
  • 我们将学生声明为字典“Dict”。
  • 然后,我们使用代码Students.sort,它将对Students进行排序
  • 但是为了对字典中的每个元素进行排序,我们通过声明变量S来运行for循环
  • 现在,当我们执行代码时,for循环将调用字典中的每个元素,并将按顺序打印字符串和值

字典的内置函数

len()方法

len()函数给出字典中的对数。

For example,

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "Length : %d" % len (Dict)

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("Length : %d" % len (Dict))

执行len(Dict)函数时,由于字典中有四个元素,因此输出为“ 4”

变量类型

Python不需要显式声明变量类型。 为了确定变量的类型的代码是“%type(Dict)”

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "variable Type: %s" %type (Dict)

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("variable Type: %s" %type (Dict))
  • 使用代码%type来了解变量类型
  • 执行代码时,它告诉变量类型是dictionary

cmp()方法

比较方法cmp(dic1, dict2)在Python中用于比较两个字典的值和键。 如果两个字典相等,则method返回0;如果dic1> dict2则返回1;如果dict1 <dict2则返回-1。

Python 2 Example

Boys = {'Tim': 18,'Charlie':12,'Robert':25}
Girls = {'Tiffany':22}	
print cmp(Girls, Boys)

Python 3 Example

cmp is not supported in Python 3
  • 我们有两个字典“ Boys”和“ Girls”。
  • 您在代码 cmp(Girls, Boys)中首先声明的那个将被视为dict1 。在我们的例子中,我们首先声明了“ Girls”,因此它将被视为dict1,而Boys将被视为dict2。
  • 当执行代码时,它输出-1,这表明我们的dict1小于dict2。

字典Str(dict)

使用Str()方法,可以使字典成为可打印的字符串格式。

Python 2 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print "printable string:%s" % str (Dict)

Python 3 Example

Dict = {'Tim': 18,'Charlie':12,'Tiffany':22,'Robert':25}	
print("printable string:%s" % str (Dict))
  • 使用代码%str(Dict)
  • 它将字典元素返回为可打印的字符串格式

摘要:

字典是一种数据结构,用于存储以某种方式连接的信息。 Python字典定义为键和值两个元素。 字典不会以任何特定顺序存储其信息,因此您可能无法以输入顺序来获取信息。

  • 键将是一个元素
  • 值可以是列表,也可以是列表中的列表,数字等。
  • 每个key不允许多个条目(不允许重复key)
  • 字典中的值可以是任何类型,而键必须是不变的,例如数字,元组或字符串。
  • 字典键区分大小写

相关推荐

Ubuntu 操作系统常用命令详解_ubuntu各种命令

UbuntuLinux是一款流行的开源操作系统,广泛应用于服务器、开发、学习等场景。命令行是Ubuntu的灵魂,也是高效、稳定管理系统的利器。本文按照各大常用领域,详细总结Ubuntu必学...

秒变万能家庭服务器!斐讯N1 armbian安装指南

一直以来,我都想配置一台小型服务器放在家里玩一玩,但是x86架构的主机体积大功耗高,价格也不低。而树莓派的话,价格便宜一点,性能对于轻度使用也基本够用。可是树莓派仍然要两三百块钱,感觉还是有点贵。于是...

浏览器里跑Windows XP?开发者硬核复现,免安装还能玩扫雷、纸牌接龙,网友直呼:爷青回!

整理|苏宓出品|CSDN(ID:CSDNnews)你还记得上一次用WindowsXP是什么时候吗?这个诞生于2001年的操作系统,曾因操作简单、性能提升、兼容性好,迅速成为一代人...

阿里云安装飞牛教程,这次待机0功耗了

把照片、聊天记录、工作文件一股脑儿塞进网盘,却突然发现账号被封、文件被删,那一刻像被人扒光了扔大街上。昨晚,我在阿里云花29块买了台最便宜的VPS,折腾三小时,把Nextcloud装进这台小机器,手机...

【入门】【失败】Linux下mysql-8.0.22-linux-x64.tar.gz 安装

因为系统环境的一些问题,最后安装失败这篇文章只保留过程一些笔记做参考创建MySQL用户和组sudogroupaddmysqlsudouseradd-r-gmysql-s/bin/...

Jenkins 安装与部署完整指南_jenkins安装与配置windows

Jenkins安装与部署完整指南Jenkins是一款开源的自动化服务器,常用于持续集成(CI)和持续交付(CD)。本文将介绍在Linux、Windows、macOS三大平台上的安装与部署步骤,...

Nacos 安装教程_nacos安装部署

Nacos安装与生产部署增强版教程(Windows&Linux)Nacos是阿里巴巴开源的一款动态服务发现、配置管理和服务管理平台,支持几乎所有主流类型服务的发现、配置和管理。加入了版本匹配...

Linux开机自启服务完全指南:3步搞定系统服务管理器配置

为什么需要配置开机自启?想象一下:电商服务器重启后,MySQL和Nginx没自动启动,整个网站瘫痪!这就是为什么开机自启是Linux运维的必备技能。自启服务能确保核心程序在系统启动时自动运行,避免人工...

centos nginx docker-compose安装

一、nginx及docker文件准备1、docker-compose.ymlversion:'3'services:nginx:restart:always...

Nginx合集-高可用(Keepalived)_高可用 nginx

Keepalived简介Keepalived是Linux下一个轻量级别的高可用解决方案。高可用:广义来讲,是指整个系统的高可用行;狭义的来讲就是主机的冗余和接管。它与HeartBeat实现类似的功能,...

Nginx 笔记_nginx最全教程

gcc#可能需要安装C++yum-yinstallgcc-c++installnginxbybashcd/usr/local/src##@seehttp://nginx...

JAVA面试|nginx如何解决跨域问题_nginx解决跨域问题原理

核心思想:跨域问题是浏览器的安全限制,不是服务器本身拒绝通信。Nginx作为强大的反向代理服务器,可以通过在响应中添加特定的HTTP头信息(CORS头),告诉浏览器:“这个跨域请求是我允许的,你可...

Nginx主从架构详解(图文全面总结)

Nginx是大型架构的必备技能,下面我重点详解Nginx主从架构@mikechen文章来源:mikechen.ccNginx主从在大规模Web应用和高可用部署中,Nginx作为高性能反向代理与负...

Nginx动静分离详解(原理+配置+实战)

Nginx动静分离是一种常见的Web服务优化技术,Nginx动静分离可以更好的提升性能@mikechen文章来源:mikechen.ccNginx动静分离动静分离,顾名思义,就是将Web应用中...

大文件传不动?WinRAR/7-Zip 入门到高手,这 5 个技巧让你效率翻倍

“这200张照片怎么传给女儿?微信发不了,邮箱附件又超限……”62岁的张阿姨对着电脑犯愁时,儿子只用了3分钟就把照片压缩成一个文件,还教她:“以后用压缩软件,比打包行李还方便!”职场人更懂这...

取消回复欢迎 发表评论: