python中操作字典,字典可变

访问,取值

dict1 = {'Name':'xm','Age':18,'Class':'First'}print("dict1['Name']:",dict1['Name'])
print("dict1['Age']:",dict1['Age'])
print("名字为:",dict1.get("Name"))

修改字典

dict1 = {'Name':'xm','Age':'26','Class':'First'}dict1['Age']=8
print(dict1)

增加字典

dict1 = {'Name':'xm','Age':'26','Class':'First'}dict1['School'] = "家里蹲大学"
print(dict1)

删除字典中的元素

dict1 = {'Name':'xm','Age':'26','Class':'First'}

del dict1['Name']  #删除键是'Name'的数据

print(dict1)

清空和删除字典

dict1 = {'Name':'xm','Age':'26','Class':'First'}

dict1.clear()  #清空字典,字典还存在

print(dict1)

del dict1  #删除字典,字典不存在,输出会报错

字典的其它要点:

1.键不允许相同,如果相同,后面的会覆盖前面的

2.键是不可变的,所以只能用数字,字符串,元组来担当

dict1 = {(1,2):"元组",1:10}
print(dict1)
print(dict1[(1,2)])
print(dict1[1])

返回所有的键和值

dict.keys()  以列表的形式返回一个字典中所有的键

dict.values()  以列表的形式返回一个字典中所有值

dict1 = {'Name':'xm','Age':'26','Class':'First'}
print(dict1.keys())
print(type(dict1.keys())) #判断类型,返回的是列表
for x in dict1.keys():  #取出所有的键  print("keys为",x)
for x in dict1.values(): #取出所有值print("values为",x)

结果:

dict_keys(['Name', 'Age', 'Class'])
<class 'dict_keys'>

keys为 Name
keys为 Age
keys为 Class
values为 xm
values为 26
values为 First

字典的内置函数/方法

  内置函数

    1.len(dict)  计算字典元素个数,即键的总数

      2.str(dict)  输出字典可打印的字符串表示

      3.type(variable)  返回输入的变量类型,如果变量是字典就返回字典类型

    内置方法

    1.dict.clear  删除字典内所有元素

      2.dict.copy  返回一个字典的浅复制

dict1={'1':1,'2':2}
theCopy=dict1.copy()
print(dict1)
dict1['1']=5
sum=dict1['1']+theCopy['1']
print(sum)

结果:

{'1': 1, '2': 2}
6

      3.dict.fromkeys(seq[,val])  创建一个新字典,以序列seq中元素做字典的键,val为字典所有键对应的初始值

      4.dict.get(key,default=None)  返回指定键的值,如果值不在字典中返回default值

      5.dict.has_key(key)  如果键在字典dict里返回true,否则返回false

      6.dict.items()  以列表返回可遍历的(键,值)元组数组

      7.dcit.keys()  以列表返回一个字典所有的键

      8.dict.values()  以列表返回一个字典所有制

      9.dict.setdefault(key,default=None)  和get()类似,但如果键不存在于字典中,将会添加键并将值设为default

      10.dict.update(dict2)  把字典dict2的键/值更新到dict里

        

dict1 = {3:"c", 4:"d"}
dict2 = {1:"a", 2:"b"}
dict3 = dict1.update(dict2)#只是覆盖了dict1
print(dict1)
print(dict3) #输出的是None,合并的并没有产生新的字典,覆盖了原来的dict1

结果:

{1: 'a', 2: 'b', 3: 'c', 4: 'd'}
None

  

转载于:https://www.cnblogs.com/R-bear/p/6965569.html

python基础-字典相关推荐

  1. python基础—字典

    阅读文本需要3分钟,不建议跳读 节目清单 字典是python中最重要的数据类型,字典由"键-值"对组成的集合,字典中的"值"通过"键"来引用 ...

  2. 4道Python基础字典练习题

    1.写代码,有如下字典,按照要求实现每一个功能,dic = {'k1':'v1','k2':'v2','k3':[11,22,33]} 请循环输出所有的 key dic = {'k1':'v1','k ...

  3. python基础——字典

    字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 d = {key1 : v ...

  4. 大学python教材实验七字典与集合答案_2018-08-28 day7 python基础 字典和集合(含作业)...

    1.字典(dict) 一.字典是容器类型(序列 ),以键值对作为元素.字典里面存的数据全是以键值对的形式出现的 b/键值对----> 键:值(key:value) dict1 = {'key1' ...

  5. Python基础----字典

    文章目录 字典定义 1.1 字典的创建fromkeys.copy 1.2 字典的元素的增加update.setdefault 1.3 字典元素的删除clear.pop.popitem.del 1.4 ...

  6. Python基础-字典(字典常用函数/操作/字典遍历)

    字典是Python中除列表外,最灵活的数据类型,使用键值对存储数据,其中键必须是唯一的,值可以是任意类型 字典类型格式 student = {'键名1': 值1, '键名2': 值2, ...} # ...

  7. python字典和集合对象可以进行索引操作_建议收藏丨纯知识点:Python基础—字典、集合操作大全...

    本文为纯知识点,预计需阅读二十分钟 数据结构基本上就是--它们是可以处理一些 数据 的 结构 .或者说,它们是用来存储一组相关数据的. 在Python中有四种内建的数据结构--列表.元组和字典,集合. ...

  8. python基础---字典的基本操作

    1.字典的定义 在Python中,字典是一系列键值对,每个键与每个值关联. 键必须是唯一的,值不一定. # 表示 dic = {"name":"妮妮",&quo ...

  9. Python基础——字典中由value查key的几点说明

    众所周知,字典dict最大的好处就是查找或插入的速度极快,并且不想列表list一样,随着key的增加越来越复杂.但是dict需要占用较大的内存空间,换句话说,字典dict是以空间换速度.详细请见如下示 ...

最新文章

  1. 《系统集成项目管理工程师》必背100个知识点-17项目管理计划制订的步骤
  2. [试卷]古诗文背诵(七年级上学期)
  3. html中字体响应式怎么写,css字体单位之间的区分以及字体响应式实现_html/css_WEB-ITnose...
  4. 数字签名与HTTPS详解
  5. 全国计算机等级考试职称,全国职称计算机考试与全国计算机等级考试有什么不同?...
  6. 时间复杂度和空间复杂度,一看就懂,面试前必过一遍
  7. Endnote在word中每次启动都要加载,或者无法加载的解决办法
  8. Bugfree 搭建
  9. php图片处理-补全图片链接,在链接前添加ip或其他路径-在正则匹配到的字符串前添加指定字符串
  10. Windows FindFirstFile利用
  11. CUDA的内存泄露问题及解决办法
  12. mysql数据库攻击与防御_专题:SQL注入攻击与防御_51CTO.COM
  13. putty终端linux怎么粘贴复制,PuTTY下的保持SSH连接及复制粘贴功能
  14. 语音合成工具Coqui TTS安装及体验
  15. 没有想到,网易首席架构师竟用了500页笔记,把网络协议给趣谈了
  16. androidStudio分包引起的系统崩溃,报错ClassNotFoundException: Didn‘t find class “XXXView“ on path: DexPath../.apk
  17. 华中科技大学计算机科学与技术学院实验班,华中科技大学计算机科学与技术学院2017年推免生招生简章...
  18. 谈一谈Java中的深拷贝和浅拷贝
  19. js过滤出对象中想要的数据
  20. 监控——Prometheus+ Grafana+Mysql主从复制监控

热门文章

  1. mysql的别名可以动态么_mysql别名的使用
  2. php透明颜色的代码,PHP 透明水印生成代码参考
  3. jquery/css需要记录的小知识(持续补充)
  4. 【以太坊】深入理解智能合约(合约调合约)
  5. 如何把代码写的优雅一些
  6. nginx安装路径,查找配置文件以及如何配置
  7. 一年后斩获腾讯T3,层层深入
  8. C++中的sta::atomic<bool>和auto类型
  9. VScode+SSH Remote多级连跳配置
  10. CyberDuck:Macos和Linux服务器简洁传大文件