py-day2-3 python 字典
# 字典的value可以是任何值
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':'v3'},5,6],
'k4':(88,99,66)
}
print(test) {'k1': 'v1', 'k2': True, 'k3': [1, 2, 3, 4, {'t1': 'v2', 't2': 'v3'}, 5, 6], 'k4': (88, 99, 66)}
# 布尔值(True=1,False=0)可以作为key但不能有重复。 列表,字典是不能作为字典的key
test = {
1:'abd',
'k1':'esd',
True: '',
(11,22):123,
[1,b,8]:'bes', 【列表,字典是不能作为字典的key】
}
test = {
1:'abd',
'k1':'esd',
True: '',
}
print(test)
{1: '', 'k1': 'esd'}
test1 = {
'':'abd',
'k1':'esd',
True: '',
}
print(test1)
{'': 'abd', 'k1': 'esd', True: ''}
# 字典是无序的
# 通过索引的方式找到指定元素。
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':(12,18)},5,6],
'k4':(88,99,66)
}
v = test['k3'][4]['t2'][0]
print(v) 12
# 字典支持del删除。
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':(12,18)},5,6],
'k4':(88,99,66)
}
del test['k3'][4]['t2']
del test['k4']
print(test) {'k1': 'v1', 'k2': True, 'k3': [1, 2, 3, 4, {'t1': 'v2'}, 5, 6]}
# for循环默认循环的是key
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':(12,18)},5,6],
'k4':(88,99,66)
}
for item in test:
print(item) k1
k2
k3
k4
# for循环加 .value() 循环键的值
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':(12,18)},5,6],
'k4':(88,99,66)
}
for item in test.values():
print(item) v1
True
[1, 2, 3, 4, {'t1': 'v2', 't2': (12, 18)}, 5, 6]
(88, 99, 66)
## for循环 for k,v in 字典变量.items(): 循环所有
test = {'k1':'v1',
'k2':True,
'k3':[1,2,3,4,{'t1':'v2','t2':(12,18)},5,6],
'k4':(88,99,66)
}
for k,v in test.items():
print(k,v) k1 v1
k2 True
k3 [1, 2, 3, 4, {'t1': 'v2', 't2': (12, 18)}, 5, 6]
k4 (88, 99, 66)
# dict.fromkeys([],)根据序列,创建字典,并指定统一的值
v = dict.fromkeys(['k1','k2','k3'],888)
print(v) {'k1': 888, 'k2': 888, 'k3': 888}
# dic.get() 根据key获取值,key不存在时,可以指定默认值(none)
dic ={'k1':'v1'}
v = dic.get('k1')
print(v) v1 dic ={'k1':'v1'}
v = dic.get('k8')
print(v) None
pop(),popitem() 删除并取值
dic ={'k1':'v1',
'k2':'v2',
'k3':'v3'
}
v = dic.pop('k1')
print(v)
print(dic) v1
{'k2': 'v2', 'k3': 'v3'} dic ={'k1':'v1',
'k2':'v2',
'k3':'v3'
}
v = dic.popitem()
print(v)
print(dic) ('k3', 'v3')
{'k1': 'v1', 'k2': 'v2'}
### setdefault() 设置值
# 已存在,不设置,获取当前key对应的值
dic ={'k1':'v1',
'k2':'v2',
'k3':'v3'
}
v = dic.setdefault('k1','')
print(v)
print(dic) v1
{'k1': 'v1', 'k2': 'v2', 'k3': 'v3'}
# 不存在,设置,获取当前key对应的值
dic ={'k1':'v1',
'k2':'v2',
'k3':'v3'
}
v = dic.setdefault('k6','')
print(v)
print(dic) 888
{'k1': 'v1', 'k2': 'v2', 'k3': 'v3', 'k6': ''}
# update() 字典更新 两种方法注意括号的使用
dic ={'k1':'v1',
'k2':'v2',
'k3':'v3'
}
v = dic.update({'k1':''}) 第一种
print(dic)
v1 = dic.update(k3=666) 第二种
print(dic) {'k1': '', 'k2': 'v2', 'k3': 'v3'}
{'k1': '', 'k2': 'v2', 'k3': 666}
py-day2-3 python 字典的更多相关文章
- Python 字典(Dictionary)操作详解
Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...
- python字典操作
Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: 代码如下: dict ...
- python 字典操作方法详解
字典是一种通过名字或者关键字引用的得数据结构,key 类型需要时被哈希,其键可以是数字.字符串.元组,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型. 注意,浮点数比较很不精确, ...
- python字典(dictionary)使用:基本函数code实例,字典的合并、排序、copy,函数中*args 和**kwargs做形参和实参
python字典dictionary几个不常用函数例子 一.字典声明 如,d={}; d= {'x':1,'b':2} d1 = dict(x=1,y=2,z=3) d2 = dict(a=3 ...
- python字典练习题
python字典练习题 写代码:有如下字典按照要求实现每一个功能dict = {"k1":"v1","k2":"v2", ...
- 【python】Python 字典(Dictionary)操作详解
Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'} ...
- django中将views.py中的python方法传递给html模板文件
常规的模板渲染 from django.db import models # Create your models here. class ArticalType(models.Model): cap ...
- Python字典(Dictionary)
Python字典 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: d = {key1 : value1, ...
- python字典推导式 - python基础入门(17)
在昨天的文章中,我们介绍了关于python列表推导式 的使用,字典推导式使用方法其实也类似,也是通过循环和条件判断表达式配合使用,不同的是字典推导式返回值是一个字典,所以整个表达式需要写在{}内部. ...
- python 字典dict - python基础入门(15)
前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict. python中的字典可与字符串/列表/元组不同,因为 ...
随机推荐
- js没事干应该瞧瞧的一些博客
https://zhidao.baidu.com/question/1736568808722198187.html http://www.cnblogs.com/webpush/p/4963002. ...
- python中isdigit
line = "12r45ofjo13jr3 3j"print line[0:3].isdigit()返回:false line = "12345ofjo13jr3 3j ...
- webpack不同版本导致的promise不存在问题
之前采用的axios是基于promise的,但是IE并没有内置promise,所以要提前install一个promise插件: npm install promise import Promise f ...
- HTML 点击图片放大
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- input 文本框自动显示光标
使用$("#votetitle").focus();没起作用 使用document.getElementById("votetitlechild").focus ...
- eslint详细配置
vue-cli3按照官网教程配置搭建后,发现每次编译,eslint都抛出错误, 修改配置在 .eslintrc.js中修改 或者 关闭eslint 1.关闭eslint 直接注释掉package ...
- mybatis_generator合并xml和Java
之前写了合并xml的插件,今天改了改mybatis-generator源码,合并java和xml都改进去了. 先上图吧. 左边是一开始生成的,中间去掉author加了password字段和方法,右边重 ...
- Guava:好用的java类库 学习小记
基础功能 google guava中定义的String操作 在google guava中为字符串操作提供了很大的便利,有老牌的判断字符串是否为空字符串或者为null,用指定字符填充字符串,以及拆分合并 ...
- javascrit--常用互动方法
本文是刚开始学习javascript的一些基础知识 JavaScript--互动 JavaScript输出内容 document.write("内容"+"<br&g ...
- 百度地图JSSDK使用小实例
代码示例 <html> <head> <meta http-equiv="Content-Type" content="text/html; ...