Python-字典(dict)
字典是一种key-value的数据类型,字典里必须写Key和value;
字典的优点是取数方便和速度快。
字典的定义使用大括号{ },每个值用“,”隔开,key和value使用“:”分隔。
value可以取任何数据类型,但key必须是不可变的,如字符串,数字或元组。
创建一个字典infos:
infos = {
'name':'黄1',
'sex':'女',
'addr':'火星',
'age':22
}
一、增加元素:
infos['phone']=15200000000 #增加key
infos.setdefault('小金库','200w')
infos.setdefault('name','黄2') #如果key存在的话不会修改原来key的值
infos['name']='黄2'#如果key存在,会修改原来key对应的值
a={'K1':'V1'}
b={'K2':'V2'}
a.update(b) #把b的元素加入到a的字典里
print(a) #打印结果:{'K2': 'V2', 'K1': 'V1'}
二、删除元素:
infos.pop('name') #指定key来删除
infos.popitem() #随机删除一个key
del infos['phone'] #指定key来删除
infos.clear() #清空字典
三、修改元素:
infos['name']='黄2'#如果key存在,会修改原来key对应的值
四、查找元素:
print(infos['sex']) #key不存在会报错
print(infos.get('nam',110)) #如果取不到key的话,默认就是110
五、字典的内置方法:
print(infos.values()) #获取到字典所有的值
print(infos.keys()) #获取到字典所有的key
print(infos.items()) #获取到字典所有的key和值
六、循环(直接循环一个字典的话,循环的是key的值):
for p in people:
print(p)
for k,v in people.items(): #循环的时候,同时取key和value
print(k,v)
字典小练习:
- 校验输入的账号密码
users = {}
for i in range(3):
username = input('请输入账号:').strip()
passwd = input('请输入密码:').strip()
cpsswd = input('请再次输入密码:').strip()
if username=='' or passwd=='' or cpsswd=='':
print('用户名/密码不能为空')
elif username in users: #字典里面用in来判断的话,只是判断Key是否存在
print('用户名已经被注册')
elif passwd != cpsswd:
print('两次输入的密码不一致')
else:
print('恭喜注册成功!')
# users.setdefault(username,passwd)
users[username] = passwd
break
else:
print('错误次数过多')
print(users)
- 录入学生作业情况
1.查看学生作业情况;2.录入学生作业情况
homework = {
'黄1':{
'2018-6-6':'未交'
}
} check = input('请选择:1.查看学生作业情况;2.录入学生作业情况')
if check =='':
for k,v in homework.items(): #循环取到所有的key和value
print(k,v)
elif check =='':
for i in range(3):
name = input('输入名字:').strip()
time = input('输入时间:').strip()
status = input('输入状态:').strip()
if name=='' or time=='' or status=='':
print('输入不能为空')
else:
if name in homework: #判断name是否存在在字典里
homework[name][time] = status #二维字典赋值
break
else:
homework[name] = {time:status}
print('成功')
break
print(homework)
Python-字典(dict)的更多相关文章
- python字典dict的增、删、改、查操作
## python字典dict的增.删.改.查操作dict = {'age': 18, 'name': 'jin', 'sex': 'male', }#增# dict['heigh'] = 185 # ...
- Python 字典 dict() 函数
描述 Python 字典 dict() 函数用于创建一个新的字典,用法与 Pyhon 字典 update() 方法相似. 语法 dict() 函数函数语法: dict(key/value) 参数说明: ...
- 'dict_values' object does not support indexing, Python字典dict中由value查key
Python字典dict中由value查key 众所周知,字典dict最大的好处就是查找或插入的速度极快,并且不想列表list一样,随着key的增加越来越复杂.但是dict需要占用较大的内存空间,换句 ...
- python 字典dict - python基础入门(15)
前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict. python中的字典可与字符串/列表/元组不同,因为 ...
- Python字典(dict)使用技巧
字典dict是Python中使用频率非常高的数据结构,关于它的使用,也有许多的小技巧,掌握这些小技巧会让你高效地的使用dict,也会让你的代码更简洁. 1.默认值 假设name_for_userid存 ...
- python 字典 dict 该注意的一些操作
在用python处理dict 的时候,有几个该注意的地方,这里跟大家提一下: 1)操作dict 时,尽量少产生新的列表对象.比如: 遍历dict的时候,如果用 dic = {"a" ...
- python 字典(dict)按键和值排序
python 字典(dict)的特点就是无序的,按照键(key)来提取相应值(value),如果我们需要字典按值排序的话,那可以用下面的方法来进行: 1 下面的是按照value的值从大到小的顺序来排序 ...
- python 字典dict和列表list的读取速度问题, range合并
python 字典和列表的读取速度问题 最近在进行基因组数据处理的时候,需要读取较大数据(2.7G)存入字典中,然后对被处理数据进行字典key值的匹配,在被处理文件中每次读取一行进行处理后查找是否在字 ...
- Python 字典dict 集合set
字典dict Python内置字典,通过key-value进行存储,字典是无序的,拓展hash names = ['Michael', 'Bob', 'Tracy'] scores = [95, 75 ...
- 使用 json 模块,使json数据格式与Python字典dict数据格式互相转换,获取数据更加方便
一.定义 JSON 是一种数据格式 使用 javaScript (Java 死鬼破特)对象表示法 二.特点 1.JSON 与 XML格式数据的区别 ====== 两种格式的数据,都是跨语言,跨平台 c ...
随机推荐
- nodejs模块循环引用讲解
CommonJS 模块的重要特性是加载时执行,即脚本代码在require的时候,就会全部执行.一旦出现某个模块被"循环加载",就只输出已经执行的部分,还未执行的部分不会输出. 让我 ...
- Jvm的体系结构
1.垃圾回收器 垃圾回收器(又称为gc):是负责回收内存中无用的对象(好像地球人都知道),就是这些对象没有任何引用了,它就会被视为:垃圾,也就被干掉了. 2.类装载子系统 一听名字,大家就知道,肯定是 ...
- 关于h5使用bpmn.js
bpmn.js网站地址:https://bpmn.io/toolkit/bpmn-js/ bpmnjs是一款工作流绘制框架,遵循了bpmn2.0规范,实现从前台绘制工作流到后台执行的效果. 图示: 但 ...
- 接口测试工具postman/jmeter基本使用
一.接口的分类: 最常用的两种接口webservice接口和http api接口:1.webservice接口走soap协议通过http传输,请求报文和返回报文都是XML格式,现在测试的时候都通过工具 ...
- windows密码策略
windows域环境配置密码策略: http://www.cnblogs.com/danzhang/p/3693024.html windows配置密码策略: https://jingyan.baid ...
- 01 Python 逻辑运算
#基本运算符 #and or not #优先级 ()>not>and>or #and or not print(2>1 and 1<4 or 2<3 and 9&g ...
- ORM的相关操作
http://www.cnblogs.com/liwenzhou/p/8660826.html
- win7频繁提示资源管理器已停止工作解决办法
方法一,重新启动资源管理器,右键点击桌面下方的“任务栏”空白区,在弹出的菜单栏中选择“任务管理器”. 进入任务管理器,点击上方的“文件”,选择新建任务. 在弹出的对话框中,输入explorer ...
- idhttp.post方式 调用datasnap rest 远程方法(转咏南兄)
idhttp.get方式调用,这种比较简单,大家都会.post方式网上却没有任何成功的代码,本人也是摸索了一个上午才搞定. 分享给大家. (1)post方式调用的远程方法,方法名必须加“update” ...
- 2019.3.28 S21 day02pyth笔记总结
昨日内容补充: 1.字符串:'中国' 'Hello' 字符:中是一个字符,e是一个字符 字节:中是3个字节,e是1个字节 位:01010101是8位,其中0或1分别是1位 unicode用于内存 ...