# 字典的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 字典的更多相关文章

  1. Python 字典(Dictionary)操作详解

    Python 字典(Dictionary)的详细操作方法. Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型. 一.创建字典 字典由键和对应值成对组成.字 ...

  2. python字典操作

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: 代码如下: dict ...

  3. python 字典操作方法详解

    字典是一种通过名字或者关键字引用的得数据结构,key 类型需要时被哈希,其键可以是数字.字符串.元组,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型. 注意,浮点数比较很不精确, ...

  4. 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 ...

  5. python字典练习题

    python字典练习题 写代码:有如下字典按照要求实现每一个功能dict = {"k1":"v1","k2":"v2", ...

  6. 【python】Python 字典(Dictionary)操作详解

    Python字典是另一种可变容器模型,且可存储任意类型对象,如字符串.数字.元组等其他容器模型.一.创建字典字典由键和对应值成对组成.字典也被称作关联数组或哈希表.基本语法如下: dict = {'} ...

  7. django中将views.py中的python方法传递给html模板文件

    常规的模板渲染 from django.db import models # Create your models here. class ArticalType(models.Model): cap ...

  8. Python字典(Dictionary)

    Python字典 字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示: d = {key1 : value1, ...

  9. python字典推导式 - python基础入门(17)

    在昨天的文章中,我们介绍了关于python列表推导式 的使用,字典推导式使用方法其实也类似,也是通过循环和条件判断表达式配合使用,不同的是字典推导式返回值是一个字典,所以整个表达式需要写在{}内部. ...

  10. python 字典dict - python基础入门(15)

    前面的课程讲解了字符串str/列表list/元组tuple,还有最后一种比较重要的数据类型也需要介绍介绍,那就是python字典,俗称:dict. python中的字典可与字符串/列表/元组不同,因为 ...

随机推荐

  1. js没事干应该瞧瞧的一些博客

    https://zhidao.baidu.com/question/1736568808722198187.html http://www.cnblogs.com/webpush/p/4963002. ...

  2. python中isdigit

    line = "12r45ofjo13jr3 3j"print line[0:3].isdigit()返回:false line = "12345ofjo13jr3 3j ...

  3. webpack不同版本导致的promise不存在问题

    之前采用的axios是基于promise的,但是IE并没有内置promise,所以要提前install一个promise插件: npm install promise import Promise f ...

  4. HTML 点击图片放大

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. input 文本框自动显示光标

    使用$("#votetitle").focus();没起作用 使用document.getElementById("votetitlechild").focus ...

  6. eslint详细配置

    vue-cli3按照官网教程配置搭建后,发现每次编译,eslint都抛出错误, 修改配置在 .eslintrc.js中修改   或者  关闭eslint 1.关闭eslint 直接注释掉package ...

  7. mybatis_generator合并xml和Java

    之前写了合并xml的插件,今天改了改mybatis-generator源码,合并java和xml都改进去了. 先上图吧. 左边是一开始生成的,中间去掉author加了password字段和方法,右边重 ...

  8. Guava:好用的java类库 学习小记

    基础功能 google guava中定义的String操作 在google guava中为字符串操作提供了很大的便利,有老牌的判断字符串是否为空字符串或者为null,用指定字符填充字符串,以及拆分合并 ...

  9. javascrit--常用互动方法

    本文是刚开始学习javascript的一些基础知识 JavaScript--互动 JavaScript输出内容 document.write("内容"+"<br&g ...

  10. 百度地图JSSDK使用小实例

    代码示例 <html> <head> <meta http-equiv="Content-Type" content="text/html; ...