# 字典的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. 查看指定库对应GCC版本

    strings /usr/lib/libstdc++.so.6 | grep GLIBCXX

  2. 『TensorFlow』单&双隐藏层自编码器设计

    计算图设计 很简单的实践, 多了个隐藏层 没有上节的高斯噪声 网络写法由上节的面向对象改为了函数式编程, 其他没有特别需要注意的,实现如下: import numpy as np import mat ...

  3. python入门-基础语法

    一.变量 定义字符串要加单引号‘’ 变量命名规范: 变量名只能是字母.数字或下划线的任意组合 变量名的第一个字符不能是数字 变量名不能用关键字 变量名不要用中文 变量名不要太长,区分大小写 面就用单引 ...

  4. js禁止页面滚动

    开发移动端页面的时候有一个很比较常见的需求,在出现弹窗时,禁止滑动弹窗后面的主体页面.如何实现呢,往下看 js实现整个页面禁止滚动: document.body.addEventListener('t ...

  5. Java虚拟机JVM相关知识整理

    Java虚拟机JVM的作用: Java源文件(.java)通过编译器编译成.class文件,.class文件通过JVM中的解释器解释成特定机器上的机器代码,从而实现Java语言的跨平台. JVM的体系 ...

  6. QSplineSeries QChartView绘制曲线

    参考资料: https://www.qtdebug.com/qtbook-paint-smooth-curve-qchart/ https://blog.csdn.net/liang19890820/ ...

  7. Java IO编程全解(二)——传统的BIO编程

    前面讲到:Java IO编程全解(一)——Java的I/O演进之路 网络编程的基本模型是Client/Server模型,也就是两个进程之间进行相互通信,其中服务端提供位置信息(绑定的IP地址和监听端口 ...

  8. golang 报错illegal rune literal

    记录一下,今天运行一端代码遇到这个报错"illegal rune literal",代码如下: func main() { http.HandleFunc('/login', lo ...

  9. 用Nginx给网站做一个简单的防盗链

    目录结构 Nginx防盗链配置 有些时候,大家不想让别人调用自己的图片,一是因为个人版权的问题,再一点就是会增加服务器的负载.还会产生一些没必要的流量. 其实在Nginx里面,很容易就做到防盗链的,在 ...

  10. leetcode python 012 hard 合并k个有序链表

    #[LeetCode] Merge k Sorted Lists 合并k个有序链表(升序) import numpy as npimport time class Node(object):    d ...