python键盘输入字典类型_python数据类型——字典类型
字典(dictionary)
python中唯一的映射类型,采用键值对(key-value)的形式储存数据,python对key进行哈希函数运算,所以key值必须是可哈希的,可哈希表示key必须是不可变的,如:数字、字符串、元组,元组的值value可以为所有类型的数据。系统根据哈西的计算结果储存value的地址,所以字典是无序的。
相对于列表,字典是通过键来存取,二列表是通过偏移(下标)来存取。
方便理解:元组相当于一个大旅馆,旅馆中有很多很多的房间,存数据相当于房间中住人或者放各种东西,key相当于门牌号,这个门牌号是在旅馆不能动且一定唯一,因为门牌号一改,整个旅馆的房间就乱了。房间中的东西相当于value,每个房间中可以随意的放任何种类的东西,住人啊,放行李啊,电器什么的,就相当于value可以是任何种类的数据。这样旅馆中门牌号可以是无序的,因为每个房间和门牌号是一一对应的,所以只要找对门牌号就可以找到指定房间。
字典的创建
dic1={'name':'cai','game':"lol",'age':8}print(dic1)
格式:d ={key1 :value1,key2 :value2 }每一个key对应一个value。
增删改查
增加
dic2={'name':"li",'hobby':"money"}
dic2['age']=8#添加'age':8
print(dic2)
dic2.setdefault('age',24)#键存在,不改动,返回键对应的原值;键不存在,在字典中添加键和值,并返回新添加的值。
两种方式,一种用d[key]=value直接添加新的值,一种用setdefault方法。若不想影响字典中原有数据,单纯的添加setdafult方法相对安全;d[key]=value若字典中原来已有该key,将会把value覆盖更新。
查找
a=dic2['age']#把'age'对应的值赋给a
print(a)print(dic2.keys())#输出所有的键(key)
print(dic2.values())#输出所有的值(value)
print(dic2.items())#以元组方式输出所有键-值(key-value)
查找很简单,d[key]可直接获得键对应的值,并可用自带方法输出相应数据。
修改
dic2['age']=22
print(dic2)
d[key]=value,有则改之,无则添加。
另有update方法:
dic2.update(dic1)print(dic2)
该方法会将dic1中的所有键值添加到dic2,若dic2中有和dic1中的键相同,则dic2中对应的值将会被覆盖。
删除
del dic2['age']print(dic2)
类似列表,可以用del d[key]删除对应键值。同样也有pop和clear方法:
dic2.pop('age')#删除键age的键和值,返回删除的值
dic1.clear()#清空整个字典
del dic2#删除整个字典
字典的嵌套
既然字典中的value可以是任何类型的数据,那value也可以是字典类型,字典中的字典就是嵌套。举个例子:
dic4={'文件夹':{'games':{'FC':['坦克大战','魂斗罗','超级玛丽'],'MD':['新光明与黑暗','梦幻之星4千年终结','雪人兄弟'],'GBA':['口袋妖怪漆黑的魅影','铸剑物语','火焰纹章','超级机器人大战'],
}
}
}
我这个dic4按照我电脑的一个文件夹创建。那么字典以内的字典如何查看修改呢。
x=dic4['文件夹']['games']['FC'][1]print(x)
dic4['文件夹']['games']['FC'][1]='雪人兄弟'
print(dic4)
字典的嵌套类似文件夹,有层级关系。用[]进入一层字典,在下一层再用[]进入再下一层,类推。可以进入任何一层进行访问修改删除等操作。
还有排序函数:
print(sorted(dic4['文件夹']['games']))
可以用sorted函数对子典的一层内容进行排序,可以是key,value,或者key-value.
字典的遍历
可以通过for循环进行对整个字典内数据的获取:
dic5={'name':"li",'hobby':"money"}for i indic5:print(i,dic5[i])for i,v indic5.items():print(i,v)
python键盘输入字典类型_python数据类型——字典类型相关推荐
- python键盘输入转换为列表_Python键盘输入转换为列表的实例
Python输入字符串转列表是为了方便后续处理,这种操作在考试的时候比较多见. 1.在Python3.0以后,键盘输入使用input函数 eg1. >>> x=input >& ...
- python字典的值的类型_Python数据类型-字典
Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.字典的新增 字典是由键值对组成的.字典的key值必须唯一,且不可变 dict = {'name': ...
- python随机字典数据_python数据类型-字典
本节主要内容: 1. 字典的简单介绍 2. 字典增删改查和其他操作 3. 字典的嵌套 字典 字典(dict)是python中唯一的一个映射类型.他是以{ }括起来的键值对组成.在dict中key是唯一 ...
- python键盘输入数组_python 二维数组切割Python读取键盘输入的2种方法
Python提供了两个内置函数从标准输入读入一行文本,默认的标准输入是键盘.如下: 1.raw_input 2.input raw_input函数raw_input() 函数从标准输入读取一个行,并返 ...
- python 键盘输入_跟我一起学python | 探究07
输入外部数据 数据类型转换(str转换int)判断数据类型 字符串截取 老齐说:编程就是解决问题.本探究遵循老齐的主张撰写. 下面这段程序代码很简单: i=16j=29k=i+jprint(k) # ...
- python键盘输入代码,python监控键盘输入实例代码
本文研究的主要是python监控键盘输入的相关代码,用到了os,sys,time等,具体实现代码如下: #!/usr/bin/env python # -*- coding: utf-8 -*- im ...
- Python判断输入的数是否为数值类型,如果是则指出类型
题目:Python:判断输入的数是否为数值类型(int或float),如果可以的话,请指出类型. 情景: 假如有个程序,输入a和b两个数,程序可以判断a和b到底是不是数值类型(即是整数还是浮点数),若 ...
- python的dict类型_python数据类型:dict(字典)
一.字典的简单介绍 字典(dict)是python中唯一的一个映射类型.他是以{}括起来的键值对组成. 语法: {key1:value1,key2:value2......} 注意:key必须是不可变 ...
- python 键盘输入数字_python实现键盘输入的实操方法
python实现键盘输入的实操方法 python中有指定的代码进行输入操作,所以今天就由小编来为大家介绍python怎么实现键盘输入. 第一首先打开电脑的python编辑工具. 再创建python项目 ...
- python字典查询_python查询字典
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 开发准备cas 的 python sdk 包含了用于访问和操作 cas 的所有 ...
最新文章
- centos gitlab mysql_CentOS-7下yum安装GitLab-CE
- dedecms /member/reg_new.php SQL Injection Vul
- 实践:大规模混合部署项目在字节跳动的落地
- 【错误记录】Visual Studio 中配置 NDK 头文件路径 ( NDK 的三个头文件路径 | 与 CPU 架构相关 asm 头文件路径选择 )
- unity调用普通java类_Unity中C#和Java的相互调用实例代码
- OpenCV学习之Mat::at()理解
- 工商银行打造在线诊断平台的探索与实践
- 15数码 java,15数码问题
- Linux下arp用法
- MGTemplateEngine 模版发动机简单使用
- JavaSE_1 基本概念
- 个人 易混淆 高频 高级单词
- PDF+word生成pdf+嵌入所有字体
- C++开源项目:十行代码15个BUG,你入坑了吗?
- 【Windows Server 2019】企业虚拟专用网络服务的配置和管理(上)
- python如何进行md5解密_python写一个md5解密器
- (已解决)579B但答案仍旧错误terminate called after throwing an instance of ‘ std::bad_array_length‘,
- 车载以太网转换器 100/1000BASE-T1 转换器
- 电脑怎么录屏幕视频带声音?电脑录屏教程介绍
- 【工作总结】工作感受
热门文章
- python实现爬虫收集图片 花瓣网_利用Python抓取花瓣网美图实例
- hrm系统源码php,开源HRM源码系统下载
- C语言练习题——if语句
- 关于intel六代/七代CPU安装win7系统解决USB3.0驱动的镜像文件
- 微信小程序生成二维码
- Java线程执行native方法时程序计数器为空,如何确保native执行完后的程序执行的位置
- Quartz 定时任务时间表达式说明
- off cpu linux,宋宝华: 用off-cpu火焰图进行Linux性能分析
- malloc.h头文件和malloc函数详解
- DbVisualizer配置神通数据库驱动