#!/usr/bin/env python
__author__ = "lrtao2010" #Python 3.7.0 字典常用方法 #字典的key是唯一的,且不能被修改,value可以是任意值
#字典是无序的 # info = {'name':'tom','age':'10'}
#
# info1 = {
# 'name':'tom',
# 'age':'10'
# } # info = {'name':'tom','age':'10'}
# v1 = info['name']
# v2 = info['age']
#
# print(v1,v2)
# tom 10 # info = {
# 'name':[
# 11,
# 22,
# 33,
# {
# 'here':'ok'
# }
#
# ]
# }
#
# v = info['name'][3]['here']
# print(v)
# ok #clear(self) 清空字典
# info = {"name":"tom"}
# info.clear()
# print(info) #copy(self) 浅复制
# info1 = {"name":['tom']}
# info2 = info1.copy()
# print(info2)
# info1["name"][0] = 'lilei'
# print(info1)
# print(info2)
# {'name': ['tom']}
# {'name': ['lilei']}
# {'name': ['lilei']} #深复制
# import copy
# info1 = {"name":['tom']}
# info2 = copy.deepcopy(info1)
# print(info2)
# info1["name"][0] = 'lilei'
# print(info1)
# print(info2)
# {'name': ['tom']}
# {'name': ['lilei']}
# {'name': ['tom']} #fromkeys(*args, **kwargs)使用给定的键建立字典,默认对应值为None
# keys_in = ('name','age')
# keys_out1 = dict.fromkeys(keys_in)
# keys_out2 = dict.fromkeys(keys_in,10)
# print(keys_out1)
# print(keys_out2)
# {'name': None, 'age': None}
# {'name': 10, 'age': 10} #get(self, *args, **kwargs) 返回指定键的值,如果键不存在,返回默认值
# info1 = {"name":['tom']}
# print(info1.get('name','No'))
# print(info1.get('name1','No'))
# ['tom']
# No # v = info1['name1'] #键不存在会报异常
# print(v)
# v = info1['name1']
# KeyError: 'name1' #items(self) 遍历键值对
# info1 = {"name":['tom']}
# v = info1.items()
# print(v)
# dict_items([('name', ['tom'])]) #keys(self) 遍历键
# info1 = {"name":['tom']}
# v1 = info1.keys()
# print(v1)
# dict_keys(['name']) #values(self) 遍历值
# info1 = {"name":['tom']}
# v2 = info1.values()
# print(v2)
# dict_values([['tom']]) # info1 = {"name":['tom'],'age':'18','city':'BJ'}
#
# for k,v in info1.items():
# print("items()",k,v)
# for k1 in info1.keys():
# print('keys()',k1)
# for v1 in info1.values():
# print("values()",v1)
# items() name ['tom']
# items() age 18
# items() city BJ
# keys() name
# keys() age
# keys() city
# values() ['tom']
# values() 18
# values() BJ #pop(self, k, d=None)
# 删除指定的键,并返回值,要是键不存在,并且没有给定d值,报异常,给定d值,返回d值
# info1 = {"name":['tom'],'age':'18'}
# v = info1.pop('name')
# print(v)
# print(info1)
# ['tom']
# {'age': '18'} # info1 = {"name":['tom'],'age':'18'}
# v = info1.pop('name1')
# print(v)
# print(info1)
# v = info1.pop('name1')
# KeyError: 'name1' # info1 = {"name":['tom'],'age':'18'}
# v = info1.pop('name1','Not find')
# print(v)
# print(info1)
# Not find
# {'name': ['tom'], 'age': '18'} #popitem(self) 随机删除一个,并返回键值对 # info1 = {"name":['tom'],'age':'18','city':'BJ'}
# v = info1.popitem()
# print(v)
# print(info1)
#
# ('city', 'BJ')
# {'name': ['tom'], 'age': '18'} #setdefault(self, *args, **kwargs)
#向字典中添加键值,如果添加的键在字典中不存在,直接加入键值,默认值为None
# 键存在,则返回对应的值
# info1 = {"name":['tom']}
# v1 = info1.setdefault('name','lei')
# v2 = info1.setdefault('city')
# v3 = info1.setdefault('age','18')
# print(v1)
# print(v2)
# print(v3)
# print(info1)
# ['tom']
# None
#
# {'name': ['tom'], 'city': None, 'age': '18'} #update(self, E=None, **F) 将字典2中的键值对更新到字典1中,要是有重复的键,将被覆盖
# info1 = {'name': ['tom'],'age': '18'}
# info2 = {'name': ['lilei'], 'city': 'BJ'}
# info1.update(info2)
# print(info1)
# print(info2)
# {'name': ['lilei'], 'age': '18', 'city': 'BJ'}
# {'name': ['lilei'], 'city': 'BJ'} # info1 = {'name': ['tom'],'age': '18'}
# info1.update(name=123,city='SH')
# print(info1)
# {'name': 123, 'age': '18', 'city': 'SH'}
# ################################################################## #删除k,v
# info = {'name':'tom','age':'10'}
# del info['age']
# print(info)
# {'name': 'tom'}

dict 方法总结整理的更多相关文章

  1. IIS6.0 IIS7.5应用程序池自动停止的解决方法 搜集整理

    来源:http://www.guchengnet.com/1499.html IIS6.0 IIS7.5应用程序池自动停止的解决方法 搜集整理 发表于2016年12月14日 有2.3个月没有用本地的i ...

  2. CentOS yum源设定使用方法的整理(转)

    CentOS yum更新了很多版本更新,我本人认为CentOS yum很好使的文件系统,在此向大家推荐CentOS应该是做为服务器的linux的佼佼者.CentOS采用的二进制包是rpm,不过包的依赖 ...

  3. 编程中遇到的Python错误和解决方法汇总整理

    这篇文章主要介绍了自己编程中遇到的Python错误和解决方法汇总整理,本文收集整理了较多的案例,需要的朋友可以参考下   开个贴,用于记录平时经常碰到的Python的错误同时对导致错误的原因进行分析, ...

  4. 最快安装AndroidStudio的方法(小歪整理)

    最快安装AndroidStudio的方法(小歪整理)-干货,加速加载和解决无法预览布局文件的等问题 最快安装AndroidStudio的方法(小歪整理) 1.使用解压压缩包的方式安装:android- ...

  5. Win32 API中的user32.dll中的ShowWindow方法参数整理

    在使用ShowWindow方法来设置窗体的状态时,由于不知道参数值,用起来非常容易混乱,所以整理了以下其参数的枚举值,方便以后的的使用.   public class User32API { #reg ...

  6. oracle表空间表分区详解及oracle表分区查询使用方法(转+整理)

    欢迎和大家交流技术相关问题: 邮箱: jiangxinnju@163.com 博客园地址: http://www.cnblogs.com/jiangxinnju GitHub地址: https://g ...

  7. Python数据类型方法精心整理,不必死记硬背,看看源码一切都有了

    Python认为一切皆为对象:比如我们初始化一个list时: li = list('abc') 实际上是实例化了内置模块builtins(python2中为__builtin__模块)中的list类: ...

  8. Python list和dict方法

    ###list类的方法 ###append 列表内最后增加一个元素a = [1,2,3,4,5,6,"dssdsd"]a.append(5)print(a) ###clear 清空 ...

  9. Ruby字符串(2):String方法详细整理

    String方法整理 官方手册 类方法 new new(str="") → new_str new(str="", encoding: enc) → new_s ...

随机推荐

  1. CodeForces - 296A-Yaroslav and Permutations(思维)

    Yaroslav has an array that consists of n integers. In one second Yaroslav can swap two neighboring a ...

  2. reaver 破解wifi

    1. 无线网卡设置为监控模式 airmon-ng start wlan0 2. 获取附近路由信息 airodump-ng wlan0mon 3. 使用reaver破解wifi reaver -i wl ...

  3. c++笔记2

    一 继承和多态.虚函数:类不必重复造轮子,可以从其它基类派生而来(多重继承(由多个基类的特点)和虚拟继承(基类的一些特性在继承之间共享)).派生类需要在自己的头文件中包含基类头文件,切派生类声明要指明 ...

  4. ssis-oracle 数据流任务

    [OLE DB 源 1 [16]] 错误: SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER.对连接管理器“F360DB”的 A ...

  5. windows下指定端口号起步memcached

    双击.exe启动的话,默认启动的端口是11211 ,要指定端口的话加 -p + 端口号,如: E:\tools\memcached-1.4.5-win32>memcached-1.4.5.exe ...

  6. spring boot Filter过滤器的简单使用

    springboot使用Filter过滤器有两种方式: 一种是实现Filter接口然后通过@Component注解向项目加入过滤器 另一种是通过配置类来配置过滤器 @Component public ...

  7. go语言简单的soap调用方法

    package main import ( "bytes" "encoding/xml" "fmt" "io" &quo ...

  8. springmvc学习经验

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring ...

  9. 如何快速构建CMBD系统-glpi

    一.CMBD系统构建步骤 起初,开发这套CMBD系统是为了帮助朋友公司简化设备统计操作,以代替人工入库方式.举个例子,单位发放笔记本,或者设备更换了硬盘,都需要人工签到,手动输入统计,安装了CMBD系 ...

  10. Android 使用NestedScrollView+ViewPager+RecyclerView+SmartRefreshLayout打造酷炫下拉视差效果并解决各种滑动冲突

    如果你还在为处理滑动冲突而发愁,那么你需要静下心来看看这边文章,如果你能彻底理解这篇文章中使用的技术,那么,一切滑动冲突的问题解决起来就轻而易举了: 先扔一个最终实现的效果图 先分析下效果图中实现的功 ...