20_Python字典总结

时间:2022-09-03 15:38:22

字典:

python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
类似与我们查字典,我们要查一个字
1.从第一页往后翻,知道翻到想要的字为止
2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。

 #字典总复习

 '''
python内置了字典:dic全称dictionary。其他语言中成为map,使用key-value的存储,键-值。具有极快的查找速度
类似与我们查字典,我们要查一个字
1.从第一页往后翻,知道翻到想要的字为止
2.在索引表查对应的码页,然后直接翻到那一页,找到这个字,不会随着字典大小的增加而变慢。
'''
dic = {'name':'zhangsan'} #字典的增
##1.通过key增加。如果不存在就添加, 如果存在就覆盖
dic['age'] = 20 #如果此键不存在则添加
print(dic) #{'name': 'zhangsan', 'age': 20} dic['age'] = 22 #如果此键存在,则覆盖
print(dic) #{'name': 'zhangsan', 'age': 22} ##2.setdefault 如果存在,无操作,如果不存在就添加
dic.setdefault('hobby')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None}
dic.setdefault('hobby','篮球')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None} hobby已经存在,所以不操作 dic.setdefault('home','中国')
print(dic) #{'name': 'zhangsan', 'age': 22, 'hobby': None, 'home': '中国'} #字典的删操作
###按元素删除
dic.pop('hobby')
print(dic) #{'name': 'zhangsan', 'age': 22, 'home': '中国'}
dic.pop('xx')
print(dic) #KeyError: 'xx' 如果删除不存在的键,将会报错,但是pop给我们提供了容错机制
ret = dic.pop('xx','没有此键')
print(ret) #没有此键 ###按索引删
dic.popitem() #随机删除某个元素
print(dic) #{'name': 'zhangsan', 'age': 22} #字典的改
###按key改,如果key不存在,则添加
dic['age'] = 33
print(dic) #{'name': 'zhangsan', 'age': 33} dic.update({'hobby':'computer'})#如果键不存在,则添加
print(dic) #{'name': 'zhangsan', 'age': 33, 'hobby': 'computer'} dic.update({'hobby':'progrem'})#如果键存在,则修改
print(dic) #{'name': 'zhangsan', 'age': 33, 'hobby': 'progrem'} #字典的删
###清空一个字典
dic.clear()
print(dic) #{} ###删除一个键值对
del dic['hobby']
print(dic) #{'name': 'zhangsan', 'age': 33} ###删除一个字典
del dic
print(dic) #NameError: name 'dic' is not defined #字典的查
###按key查
print(dic['hobby']) #progrem ##按key查,查不到,返回提示信息
ret = dic.get('xxx','没有此键')
print(ret) #没有此键 ##遍历所有的key
for i in dic:
print(i)
for i in dic.keys():
print(i)
##遍历所有的value
for i in dic:
print(dic[i])
for i in dic.values():
print(i) ##遍历所有的键值
for k,v in dic:
print(k,dic[k])

20_Python字典总结的更多相关文章

  1. 【DG】Oracle_Data_Guard官方直译

    [DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍   Oracle Data Guard概念和管理10g版本2   Oracle Data Guard ...

  2. DVWA实验之Brute Force(暴力破解)- Low

    DVWA实验之Brute Force-暴力破解- Low     这里开始DVWA的相关实验~   有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...

  3. Oracle错误览表

    Oracle 错误总结及问题解决 ORA     本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html  作者@承影剑 ORA-0 ...

  4. Javacript实现字典结构

    字典是一种用[键,值]形式存储元素的数据结构.也称作映射,ECMAScript6中,原生用Map实现了字典结构. 下面代码是尝试用JS的Object对象来模拟实现一个字典结构. <script& ...

  5. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  6. 增强版字典DictionaryEx

    代码 public class DictionaryEx<TKey, TValue> : IDictionary<TKey, TValue> { /// <summary ...

  7. python学习笔记(字符串操作、字典操作、三级菜单实例)

    字符串操作 name = "alex" print(name.capitalize()) #首字母大写 name = "my name is alex" pri ...

  8. python之最强王者(8)——字典(dictionary)

    1.Python 字典(Dictionary) 字典是另一种可变容器模型,且可存储任意类型对象. 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包 ...

  9. python序列,字典备忘

    初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...

随机推荐

  1. web开发者谷歌浏览器常用插件

    1.Allow-Control-Allow-Origin    安装此插件解决跨域问题,在本地起服务器可访别的域的数据. 需在Access-Control-Expose-Headers加上Allow- ...

  2. 使用my exclipse对数据库进行操作&lpar;2&rpar;

    二.增加 public static void main(String[] args) {  //TODO Auto-generated method stub //4.用户输入需要添加的项目     ...

  3. STL整理

    sort 升序排列: iterator lower_bound( const key_type &key ): 返回一个迭代器,指向键值>= key的第一个元素. iterator up ...

  4. 第二百八十六天 how can I 坚持

    bug不断啊,头疼. 今天早上到的倒是挺早. 中午吃的黄焖鸡,晚上加了会班. 勇江的鱼都死了,杨建的还剩3条,晚上到家都快十点了,还洗了衣服,没捞出来呢, 希望可以请下来假吧. 晾上衣服睡觉.

  5. python序列化之pickle

    来自引用: 1.什么东西能用pickle模块存储? 所有Python支持的 原生类型 : 布尔, 整数, 浮点数, 复数, 字符串, bytes(字节串)对象, 字节数组, 以及 None. 由任何原 ...

  6. methanol 模块化的可定制的网页爬虫软件,主要的优点是速度快。

    methanol模块化的可定制的网页爬虫软件,主要的优点是速度快. 下载:http://sourceforge.net/projects/methabot/?source=typ_redirect R ...

  7. python属性管理&lpar;1&rpar;:基础

    管理属性的几种方式 在python中访问.设置.删除对象属性的时候,有以下几种方式: 使用内置函数getattr().setattr()和delattr() 自己编写getter().setter() ...

  8. CSS table-layout 属性

    设置表格布局算法: table { table-layout:fixed; } 所有浏览器都支持 table-layout 属性. 定义 tableLayout 属性用来显示表格单元格.行.列的算法规 ...

  9. centos7搭建smb服务

    1 yum install samba samba-client samba-common -y  安装smb服务 2 cp -a  /etc/samba/smb.conf /etc/samba/sm ...

  10. MySQL数据命令

    一.数据库操作 创建数据库 create database db1 charset utf8; 查看数据库 show database; show create database db1; selec ...