python中字典常用函数

字典常用函数

  1. cmp(dict1,dict2) (已删除,直接用>,<,==即可)

    • 如果两个字典的元素相同返回0,如果字典dict1大于字典dict2返回1,如果字典dict1小于字典dict2返回-1。

    • 先比较字典的长度,然后比较键,最后比较键对应的值

      dict1 = {'Name': 'Zara', 'Age': 7};
      dict2 = {'Name': 'Mahnaz', 'Age': 27};
      dict3 = {'Name': 'Abid', 'Age': 27};
      dict4 = {'Name': 'Zara', 'Age': 7};
      print ("Return Value : %d" %  cmp (dict1, dict2))
      print ("Return Value : %d" %  cmp (dict2, dict3))
      print ("Return Value : %d" %  cmp (dict1, dict4))
      # result
      Return Value : -1
      Return Value : 1
      Return Value : 0
      
  2. len(dict2)

    • 计算键的个数
  3. str(dict3)

    • 在Python中,使用str()函数可以将字典转换为字符串表示形式。这对于需要将字典的内容以字符串的形式进行输出、保存或传递给其他函数等情况非常有用。

      当你调用str()函数并传入一个字典作为参数时,它会返回一个包含字典内容的字符串。这个字符串的格式与字典结构相似,通常以花括号{}表示,每个键值对用冒号:连接,并且键值对之间用逗号,分隔。

      具体示例如下:

      my_dict = {'name': 'John', 'age': 30, 'city': 'New York'}
      my_str = str(my_dict)
      print(my_str)
      

      输出结果:

      {'name': 'John', 'age': 30, 'city': 'New York'}
      

      这样,你就可以在需要将字典转换为字符串的场景中使用str()函数了。比如,你可以将字典保存到文件中,或者将其作为参数传递给需要接受字符串作为输入的函数等。

  4. dict4.clear()

    • 用于删除字典内所有元素

      tinydict = {'Name': 'Zara', 'Age': 7};print ("Start Len : %d" %  len(tinydict))
      tinydict.clear()
      print ("End Len : %d" %  len(tinydict))
      
  5. dict5.copy()

    • 返回一个字典的浅复制。

      dict1 =  {'user':'runoob','num':[1,2,3]}dict2 = dict1          # 浅拷贝: 引用对象
      dict3 = dict1.copy()   # 浅拷贝:深拷贝父对象(一级目录),子对象(二级目录)不拷贝,还是引用# 修改 data 数据
      dict1['user']='root'
      dict1['num'].remove(1)# 输出结果
      print(dict1)
      print(dict2)
      print(dict3)
      # result
      {'num': [2, 3], 'user': 'root'}
      {'num': [2, 3], 'user': 'root'}
      {'num': [2, 3], 'user': 'runoob'}
      #实例中 dict2 其实是 dict1 的引用(别名),所以输出结果都是一致的,dict3 父对象进行了深拷贝,不会随dict1 修改而修改,子对象是浅拷贝所以随 dict1 的修改而修改。
      
  6. dict6.fromkeys(seq[, value])

    • 用于创建一个新字典(不对dict6进行修改),以序列 seq 中元素做字典的键,value 为字典所有键对应的初始值

    • seq – 字典键值列表。

    • value – 可选参数, 设置键序列(seq)的值,默认为 None。

      seq = ('Google', 'Runoob', 'Taobao')# 不指定默认的键值,默认为 None 
      thisdict = dict.fromkeys(seq)
      print ("新字典为 : %s" %  str(thisdict))# 指定默认的键值
      thisdict = dict.fromkeys(seq, 10)
      print ("新字典为 : %s" %  str(thisdict))
      # result
      新字典为 : {'Google': None, 'Taobao': None, 'Runoob': None}
      新字典为 : {'Google': 10, 'Taobao': 10, 'Runoob': 10}
      
  7. dict7.get(key,[,value])

    • key – 字典中要查找的键。

    • value – 可选,如果指定键的值不存在时,返回该默认值。

    • 返回指定键的值,如果键不在字典中返回默认值 None 或者设置的默认值。

      tinydict = {'Name': 'Runoob', 'Age': 27}print ("Age : %s" %  tinydict.get('Age'))# 没有设置 Sex,也没有设置默认的值,输出 None
      print ("Sex : %s" %  tinydict.get('Sex'))  # 没有设置 Salary,输出默认的值  0.0
      print ('Salary: %s' % tinydict.get('Salary', 0.0))
      # result
      Age : 27
      Sex : None
      Salary: 0.0
      
    • get()方法和dict[key]的区别

      get(key) 方法在 key(键)不在字典中时,可以返回默认值 None 或者设置的默认值。

      dict[key] 在 key(键)不在字典中时,会触发 KeyError 异常。

    • 对嵌套字典的使用

      tinydict = {'RUNOOB' : {'url' : 'www.runoob.com'}}res = tinydict.get('RUNOOB', {}).get('url')
      # 输出结果
      print("RUNOOB url 为 :  %s" % str(res))
      # result
      RUNOOB url 为 :  www.runoob.com
      
  8. dict8.has_key(key)

    • 用于判断键是否存在于字典中,如果键在字典 dict 里返回 true,否则返回 false
  9. dict9.items()

    • 以列表返回可遍历的(键, 值) 元组数组。

      dict1 = {'a':1, 'b':2
      }
      print(dict1.items())
      # result
      dict_items([('a', 1), ('b', 2)])
      
  10. dict10.keys()

    • 以列表返回一个字典所有的键。

      dict1 = {'a':1, 'b':2
      }
      print("%s" % dict1.keys())
      print("%s" % list(dict1.keys()))
      # result
      dict_keys(['a', 'b'])
      ['a', 'b']
      
  11. dict11.setfault(key,default=None)

    • key – 查找的键值。

    • default – 键不存在时,设置的默认键值。

    • 如果字典中包含有给定键,则返回该键对应的值,否则返回为该键设置的值。

      dict1 = {'a':1, 'b':2
      }
      print(dict1.setdefault('s',"no"))
      print(dict1)
      # result
      no
      {'a': 1, 'b': 2, 's': 'no'}
      
  12. dict12.update(tinydict)

    • 将字典tinydict更新到dict12中:

      如dict12中没有的,tinydit中有的,就直接将键值对添加到dict12中,如果tinydict中有的,dict12中也有,则将dict12中所对应的键的值改为tinydict中的值

      dict1 = {'a':1, 'b':2
      }
      dict2 = {'a':100, 'c':3
      }
      dict1.update(dict2)
      print(dict1)
      #result
      {'a': 100, 'b': 2, 'c': 3}
      
  13. dict13.values()

    • 以列表返回字典中的所有值。

      tinydict = {'Name': 'Runoob', 'Age': 7}print ("Value : %s" %  tinydict.values())
      print ("Value : %s" % list(tinydict.values()) )
      # result
      Value : dict_values(['Runoob', 7])
      Value : ['Runoob', 7]
      
  14. dict14.pop(key,[,default])

    • 删除字典给定键 key 所对应的值,返回值为被删除的值。

    • key - 要删除的键

    • default - 当键 key 不存在时返回的值

    • 返回被删除的值:

      • 如果 key 存在 - 删除字典中对应的元素
      • 如果 key 不存在 - 返回设置指定的默认值 default
      • 如果 key 不存在且默认值 default 没有指定 - 触发 KeyError 异常
      site= {'name': '菜鸟教程', 'alexa': 10000, 'url': 'www.runoob.com'}element = site.pop('name')print('删除的元素为:')
      print(element)
      print('字典为:')
      print(site)
      # result
      删除的元素为:
      菜鸟教程
      字典为:
      {'url': 'www.runoob.com', 'alexa': 10000}
      
  15. dict15.popitem()

    • 返回并删除字典中的最后一对键和值。

    • 如果字典已经为空,却调用了此方法,就报出 KeyError 异常。

      site= {'name': '菜鸟教程', 'alexa': 10000, 'url': 'www.runoob.com'}
      pop_obj=site.popitem()
      print(pop_obj)
      print(site)
      # result
      ('url', 'www.runoob.com')
      {'name': '菜鸟教程', 'alexa': 10000}
      

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/68691.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

固定资产卡片乱怎么管理

固定资产卡片是记录公司固定资产信息的重要工具&#xff0c;如果管理不善&#xff0c;容易造成卡片混乱、数据错误等问题。 为了避免这种情况的发生&#xff0c;可以采取以下措施&#xff1a;  建立完善的资产管理制度&#xff0c;明确固定资产的分类、标准和使用情况&#x…

Hadoop -HDFS常用操作指令

1.启动HDFS hadoop/sbin/start-dfs.sh2.关闭 HDFS hadoop/sbin/stop-dfs.sh3. 在HDFS中创建文件夹 #老版本 hadoop fs -mkdir -p path #新版本 hadoop dfs -mkdir -p path4.查看指定目录下内容 hadoop fs -ls [-h] [-R] path hadoop dfs -ls [-h] [-R] ptahpath 指定…

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书山东师范大学图书馆

2023开学礼《乡村振兴战略下传统村落文化旅游设计》许少辉八一新书山东师范大学图书馆

客户忠诚度和保留率:不良方法的陷阱

良好的客户忠诚度和保留策略是任何电子商务业务成功的关键因素。但当出现问题时会发生什么&#xff1f;您可以采取哪些措施来鼓励忠诚度并减少客户流失&#xff1f;继续阅读以了解不良客户忠诚度和保留实践的后果。 忠诚度和保留率低下的后果 客户不满意和高流失率 客户忠诚…

如何在Mac电脑上安装WeasyPrint:简单易懂的步骤

1. 安装homebrew 首先需要确保安装了homebrew&#xff0c;通过homebrew安装weasyprint可以将需要的库都安装好&#xff0c;比pip安装更简单快捷。 安装方法如下&#xff1a; /bin/zsh -c "$(curl -fsSL https://gitee.com/cunkai/HomebrewCN/raw/master/Homebrew.sh)&qu…

苹果微信聊天记录删除了怎么恢复?果粉原来是这样恢复的

粗心大意删除了微信聊天记录&#xff1f;有时候&#xff0c;一些小伙伴可能只是想要删除一部分聊天记录&#xff0c;但是在进行批量删除时&#xff0c;不小心勾选到了很重要的对话&#xff0c;从而导致记录丢失。 如果这时想找回聊天记录该怎么办&#xff1f;微信聊天记录删除…

算法笔记 二叉搜索树

二叉搜索树&#xff08;Binary Search Tree&#xff0c;简称 BST&#xff09;是一种数据结构&#xff0c;用于存储具有可比较键&#xff08;通常是数字或字符串&#xff09;的元素 1 结构特点 节点结构&#xff1a;每个节点都有一个键和两个子节点&#xff08;左子节点和右子…

服务器管理系统是什么

服务器管理系统是什么 服务器管理系统&#xff0c;是在操作系统下对操作系统的服务器软件及其相关软件进行二次设置的管理软件&#xff0c;是运营商管理域名、服务器、企业邮局、数据库等服务器主机类产品的一个网站平台&#xff0c;以达到快捷实现域名、服务器主机、企业邮局…

Wrist PPG数据集

Wrist PPG数据集通常是指采集自腕部&#xff08;手腕&#xff09;的光学心率传感器数据集&#xff0c;用于监测心率、心律变异性和其他生理信号。PPG代表光学脉搏波形&#xff0c;它是通过测量皮肤表面的光反射来获得心率信息的一种非侵入性方法。这些数据集通常用于研究心脏健…

elementUI textarea可自适应文本高度的文本域

效果图; 通过设置 autosize 属性可以使得文本域的高度能够根据文本内容自动进行调整&#xff0c;并且 autosize 还可以设定为一个对象&#xff0c;指定最小行数和最大行数。 <el-inputtype"textarea"autosizeplaceholder"请输入内容"v-model"te…

NVIDIA CUDA Win10安装步骤

前言 windows10 版本安装 CUDA &#xff0c;首先需要下载两个安装包 CUDA toolkit&#xff08;toolkit就是指工具包&#xff09;cuDNN 1. 安装前准备 在安装CUDA之前&#xff0c;需要完成以下准备工作&#xff1a; 确认你的显卡已经正确安装&#xff0c;在设备管理器中可以看…

MFC 与 QT“常用控件”对比

1、 常用控件 MFC QT 1.静态文本框/标签 CStatic QLabel 按钮 CButton包含了3种样式的按钮&#xff0c;Push Button&#xff0c;Check Box&#xff0c;Radio Box 4种不同的类 2.按钮&#xff1a;推动按钮 Push Button(同一个类CButton) QPushButton 3.按钮&#xf…

【从0学习Solidity】2. 值类型详解

Solidity极简入门: 2. 值类型 博主简介&#xff1a;不写代码没饭吃&#xff0c;一名全栈领域的创作者&#xff0c;专注于研究互联网产品的解决方案和技术。熟悉云原生、微服务架构&#xff0c;分享一些项目实战经验以及前沿技术的见解。关注我们的主页&#xff0c;探索全栈开发…

【跟小嘉学 Rust 编程】二十二、常用 API

系列文章目录 【跟小嘉学 Rust 编程】一、Rust 编程基础 【跟小嘉学 Rust 编程】二、Rust 包管理工具使用 【跟小嘉学 Rust 编程】三、Rust 的基本程序概念 【跟小嘉学 Rust 编程】四、理解 Rust 的所有权概念 【跟小嘉学 Rust 编程】五、使用结构体关联结构化数据 【跟小嘉学…

计算机网络的故事——HTTP报文内的HTTP信息

HTTP报文内的HTTP信息 文章目录 HTTP报文内的HTTP信息一、HTTP 报文二、请求报文及响应报文的结构三、编码提升传输速率 一、HTTP 报文 HTTP报文是由多行&#xff08;CRLF作换行符&#xff09;数据构成的字符串文本&#xff0c;HTTP报文可以分为报文首部和报文主体两部分&…

深度学习笔记

1. 代价函数(cost function)与误差函数(loss function)之间的关系&#xff1a;&#xff0c;其中J为代价函数&#xff0c;L为误差函数&#xff0c;Y为标签矢量&#xff0c;A为根据样本计算矢量。 2. 代价函数J对w和b的导数&#xff1a;推导过程&#xff0c;误差函数以交叉熵 为…

Java“牵手”京东商品价格数据,京东商品历史价格数据接口,京东API接口申请指南

京东平台商品历史价格接口是开放平台提供的一种API接口&#xff0c;通过调用API接口&#xff0c;开发者可以获取京东商品的标题、价格、库存、月销量、总销量、库存、详情描述、图片&#xff0c;历史价格&#xff0c;现在的价格等详细信息 。 获取商品价格接口API是一种用于获…

Unity 安卓(Android)端AVProVideo插件播放不了视频,屏幕一闪一闪的

编辑器运行没有问题&#xff0c;但是安卓就有问题&#xff0c;在平板上运行就会报错&#xff1a; vulkan graphics API is notsupported 说不支持Vulkan图形API,解决方法&#xff1a;把Vulkan删除掉

Laravel 表单验证器的常用的2种使用方法

1、使用控制器的 validate 方法进行参数验证 场景一&#xff1a;前后端未分离 /*** 保存一篇新的博客文章。** param Request $request* return Response*/ public function store(Request $request) {$this->validate($request, [title > required|unique:posts|max:2…

聊聊mysql jdbc的prepareStatement

序 本文主要研究一下mysql jdbc的prepareStatement prepareStatement java/sql/Connection.java /*** Creates a <code>PreparedStatement</code> object for sending* parameterized SQL statements to the database.* <P>* A SQL statement with or wit…