day6 字典
字典的创建方式 注意 字典是无序的 1. dic{"name":"yang","age":35} 常用还是用这个 2. dic3 = dict((("name","yang"),)) 有点麻烦,借助类的方法创建:每个list或者dic都是自己的便携的创建方法。 3. dic6 = dict.fromkeys(["host1","host2","host3"],"test") 这个可以实现类似于初始化的操作,将多个键值一起赋值 打印出来之后:{'host1': 'test', 'host2': 'test', 'host3': 'test'}
字典的嵌套 内部可以嵌套列表元祖字符串等
# 字典的嵌套 china = { "shandong":["linyi","liaocheng"], "hubei":{"wuhan":"shenghui","suizhou":"city"}, "dhahsd":"xxx" }
字典的遍历
dic7 = {"name":"alex","age":18} print(dic7.items()) for i in dic7: # 循环打印键 print(i) for i in dic7: # 循环打印值 print(i,dic7[i]) # 推荐用这种方式,效率高一些 for i,v in dic7.items(): # 循环打印值 print(i,v)
增删改查 修改
# 修改 # 根据类型,字典就找键,列表就找索引位置,最后赋值 china["shandong"][0] = "qingdao" print(china)
删除
# 删除 #del 删除指定键值对,也可以删除整个字典 del dic5["name"] print(dic5) del dic5 # 删除整个字典 #clear 清空,但是会保留空字典 dic5.clear() print(dic5) # pop 弹出,可以返回值再次对其他变量进行赋值操作 ret = dic5.pop("hobby") print(ret) print(dic5) #emmm...废物命令,字典是无序的,此命令是随机删除某个键值对,并以元祖形式 a = dic5.popitem() print(a,dic5)
其他方法
# 带默认值的查询 # setdefault(键,默认值) # 根据键查值,若查不到返回默认值,查到则返回真实值 print(china.setdefault("某个没值的或者不存在的键","默认值")) # 结果:默认值
# 排序 seq = {2:"} print(sorted(seq)) # 按照键排序 print(sorted(seq.values())) # 按照值排序 # ps: 列表可以用.sort进行排序,字典里面没有这命令
总结:字典的值可以任意值,但是键不能是布尔值,字典,或者列表。字典是无序的.get 指定键来取其值,不存在时可以指定默认值,默认是none.update 更新已存在的,不存在可以增加。.keys 返回所有的键.valaues 返回所有的值.items 返回所有的键值对.pop 删除键,可赋值,赋值的时候是赋键的值,不存在时可以指定默认值,默认是none
day6 字典的更多相关文章
- 【学习笔记】--- 老男孩学Python,day6 字典
详细方法:http://www.runoob.com/python/python-dictionary.html 1. dict 用大括号{} 括起来. 内部使用key:value的形式来保存数据 { ...
- day6 字典的增减查删
字典的使用 一.字典的特性 字典是无序的,数据关联性强,键值对,唯一一个映射的数据类型 字典的键必须是可哈希的(不可变的数据类型:字符串,数字,布尔值,元祖),并且是唯一的 不可哈希的(可变的数据类型 ...
- 【DG】Oracle_Data_Guard官方直译
[DG]Oracle Data Guard官方直译 1 Oracle Data Guard 介绍 Oracle Data Guard概念和管理10g版本2 Oracle Data Guard ...
- DVWA实验之Brute Force(暴力破解)- Low
DVWA实验之Brute Force-暴力破解- Low 这里开始DVWA的相关实验~ 有关DVWA环境搭建的教程请参考: https://www.cnblogs.com/0yst3r-2 ...
- Oracle错误览表
Oracle 错误总结及问题解决 ORA 本文转自:https://www.cnblogs.com/zhangwei595806165/p/4972016.html 作者@承影剑 ORA-0 ...
- python学习Day6 元组、字典、集合set三类数据用法、深浅拷贝
一.深浅拷贝 1. 值拷贝 ls1 = ls2 不开辟空间,指针跟着走.(直接将ls1中存放的地址拿过来,内存中不会开辟新的空间,所以你怎么变,我也跟着变.)(ls1内部的所有类型的值发生改变,l ...
- Python编程Day6——元组类型、字典类型、集合
一.元组类型(tuple) 1.用途:记录多个值,当多个值没有改变的需求此时元组更为合适 2.定义:在()内用逗号分隔开多个任意类型的值(参数为for可以循环的对象) 3.常用操作: 索引(正取向+反 ...
- day6.python字典练习题
1.有如下变量(tu是个元组),请实现要求的功能 tu = (“alex”, [11, 22, {“k1”: ‘v1’, “k2”: [“age”, “name”], “k3”: (11,22,33) ...
- day6 note 字典的增删改查(以及setdefault用法补充)
今天的内容主要是join的用法和字典的用法,由于已经有前面的列表作为基础,所以还比较简单,不过因为昨天的作业比较难也比较多,所以作业的讲解占用的时间比较长.我需要好好消化一下作业的部分. 思维导图: ...
随机推荐
- Python常见十六个错误集合,你知道那些?
使用python会出现各种各样的错误,以下是Python常见的错误以及解决方法. 1.ValueError: 'Conv2d_1a_3×3' is not a valid scope name 这个是 ...
- C#多线程中的异常处理(转载)
常规Thread中处理异常 使用Thread创建的子线程,需要在委托中捕捉,无法在上下文线程中捕捉 static void Main(string[] args) { ThreadStart thre ...
- 【LeetCode191】Number of 1 Bits★
1.题目 2.思路 方法一:常规方法. 方法二:给面试官惊喜的解法. 3.java代码 方法一代码: public class Solution { // you need to treat n as ...
- python3 编程使用技巧
from random import randint data = {"Student{}".format(i):randint(60,100) for i in range(1, ...
- layer.conifrm 非阻塞执行 ztree删除节点 问题
layer.confirm无法阻塞js执行,导致ztree插件的beforeRemove回调函数未等待用户确定删除便已经移除界面中的节点, 因此可能会出现前后台数据不一致情况,正常逻辑理应删除后台数据 ...
- Android 安全退出应用程序的方法总结
正常关闭应用程序: 当应用不再使用时,通常需要关闭应用,可以使用以下三种方法关闭android应用: 第一种方法:首先获取当前进程的id,然后杀死该进程. android.os.Process.kil ...
- ABP module-zero +AdminLTE+Bootstrap Table+jQuery权限管理系统第十四节--后台工作者HangFire与ABP框架Abp.Hangfire及扩展
返回总目录:ABP+AdminLTE+Bootstrap Table权限管理系统一期 HangFire与Quartz.NET相比主要是HangFire的内置提供集成化的控制台,方便后台查看及监控,对于 ...
- Centos下SVN环境部署记录
大多数情况下,我们日常工作中用的版本控制系统都会选择分布式的Git,它相比于集中式的SVN有很多优势.但是有些项目软件基于自身限制,可能只支持SVN做工程同步.废话就不多说了,下面记录下SVN的部署和 ...
- Keepalived基础知识-运维小结
keepalived介绍keepalived观察其名可知,保持存活,在网络里面就是保持在线了,也就是所谓的高可用或热备,它集群管理中保证集群高可用的一个服务软件,其功能类似于heartbeat,用来防 ...
- Java8之集合排序
1,List<Map<String,Object>>格式 //排序 Comparator<Map<String, Object>> comparator ...