1.字典

1.1.字典特性

字典是一种key-value的数据类型。key必须可hash,必须为不可变数据类型,且必须是唯一的;value可以存放任意多个值、可修改、可以不唯一;字典是无序的,通过key值来定位和查找。

1.2.字典的创建

(1)dic = {}  # 定义一个空字典
(2)dic = {'张云':[24, 'design', 'UI', 2333], 'luozhi': [22, 'PR', 'wild model', 2345]}

(3){}.fromkeys(seq,'Jake')   # 不指定'Jake'默认为None

#  for example:

dic={}.fromkeys(['k1','k2'],[])
print(dic) {'k1': [], 'k2': []}

键与值用冒号“:”分开;项与项用逗号“,”分开。

2.字典常见操作

2.1.打印字典中的元素

print(dic['张云'])

[24, 'design', 'UI', 2333]

2.2.修改

通过key值找到需要修改的内容,然后赋值

dic['张云'][1] = "设计部"
print(dic['张云']) [24, '设计部', 'UI', 2333]

2.3.新增

如果给一个字典中不存在的key赋值,则字典中会增加这个元素

dic = {}
dic['k3'] = 'v3' # 新增
print(dic) {'k3':'v3'}

可以使用 ''.append() :

dic['k1'].append(1)
print(dic) {'k1': [1], 'k2': [1]}

另一种新增方式: dic.setdefault(key, None) ,如果字典中不存在Key键,由 dic[key] = default 为它赋值.

2.4.删除 (4种方式)

dic = {'k1': "v1", 'k2': "v2", 'k3': "v3"}

dic.pop('k2')  # 删除k2

dic.popitem()  # 随机删除

del  dic['k1']  # 删除k1

dic.clear()  # 清空字典,删除之后可以访问

2.5. 查看

(1)dic['key'],返回字典中key对应的值,若key不存在字典中,则报错;

(2)dict.get(key, default = None) 返回字典中key对应的值,若key不存在字典中,则返回default的值(default默认为None)

2.6. 字典其他方法

len(dic)  # 查字典dic中元素的个数

dic.keys()  返回一个包含字典所有KEY的列表

dic.values()  返回一个包含字典所有value的列表

dic.items()  返回一个包含所有(键,值)的列表

dic.iteritems()、dic.iterkeys()、dic.itervalues()   与它们对应的非迭代方法一样,不同的是它们返回一个迭代子,而不是一个列表

dic.update(dic1)  将字典dic1的键值对添加到字典dic中更新dic,如果dic中存在与dic1相同的key值,则该key值对应的内容被dic1覆盖,如果没有就添加

3. 遍历字典元素

dic = {'k1': "v1", 'k2': "v2", 'k3': "v3"}
# 循环遍历出所有的key
print("all keys:")
for k in dic:
print(k) # 循环遍历出所有value
print("all values:")
for v in dic:
print(dic[v]) # 循环打印所有key和value
print("all keys and values:")
for k in dic:
print(k,dic[k])

  

 

python字典及相关操作的更多相关文章

  1. Python字典及相关操作(内含例题)

    Python字典类型 今天将会介绍一种在python中十分常见的组合数据类型——字典 通过一些实例来理解字典中的常规操作 什么是字典类型? 列表中查找是通过整数的索引(元素在列表中的序号)来实现查找功 ...

  2. Python字符串的相关操作

    1.大小写转换 判断字符串 s.isalnum() #所有字符都是数字或者字母 s.isalpha() #所有字符都是字母 s.isdigit() #所有字符都是数字 s.islower() #所有字 ...

  3. python之字典的相关操作

    一.什么是字典 dict 用{}表示,用来存放键值对数据 {key:value} 键:具有唯一性,不能重复,不可变 必须是可哈希的(不可变的数据类型) 字典是无序的,没有索引 值: 没有任何限制 已知 ...

  4. python的字典及相关操作

    一.什么是字典 字典是Python中最强大的数据类型之一,也是Python语言中唯一的映射类型.映射类型对象里哈希值(键,key)和指向的对象(值,value)是一对多的的关系,通常被认为是可变的哈希 ...

  5. python 字典的常见操作

    字典 字典的增删改查 字典的创建方式: # 创建字典类型 info = { 'name':'李白', ', 'sex':'男' } msg = { 'user01':'Longzeluola', 'u ...

  6. Selenium2+python自动化40-cookie相关操作

    前言 虽然cookie相关操作在平常ui自动化中用得少,偶尔也会用到,比如登录有图形验证码,可以通过绕过验证码方式,添加cookie方法登录. 登录后换账号登录时候,也可作为后置条件去删除cookie ...

  7. day07-Python运维开发基础(深/浅拷贝、字典/集合/相关操作)

    1. 深拷贝与浅拷贝 # ### 深拷贝 和 浅拷贝 """ a = 7 b = a a = 8 print(b) lst1 = [1,2,3] lst2 = lst1 ...

  8. python文件的相关操作

    python 目录 python 1.python文件的介绍 使用文件的目的 Python文件的类型主要有两种:文本文件和二进制文件. 操作文件的流程主要有三步:打开-操作-关闭操作. 2.文件的打开 ...

  9. 『无为则无心』Python序列 — 21、Python字典及其常用操作

    目录 1.字典的应用场景 2.字典的概念 3.创建字典的语法 4.字典常见操作 (1)字典的增加操作 (2)字典的删除操作 (3)字典的修改 (4)字典的查找 (5)copy()复制 1.字典的应用场 ...

随机推荐

  1. 从零开始通过idea插件将一个spring boot项目部署到docker容器里运行

    实操:将一个spring boot项目部署到docker容器里运行 实验需要的环境: 腾讯云+Ubuntu 16.04 x64+idea+插件docker integration+daocloud 第 ...

  2. 模拟/字符串处理 UVALive 6833 Miscalculatio

    题目传送门 /* 模拟/字符串处理:主要是对*的处理,先把乘的预处理后再用加法,比如说是:1+2*3+4 = 1+..6+4 = 11 */ #include <cstdio> #incl ...

  3. yii2 设置多个入口文件

    在web下希望加个core.php的后台入口,但因为权限问题,总是会跳转到index.php

  4. 链表中用标兵结点简化代码 分类: c/c++ 2014-09-29 23:10 475人阅读 评论(0) 收藏

    标兵结点(头结点)是在链表中的第一个结点,不存放数据,仅仅是个标记 利用标兵结点可以简化代码.下面实现双向链表中的按值删除元素的函数,分别实现 带标兵结点和不带标兵结点两版本,对比可见标兵结点的好处. ...

  5. eclipse控制台不显示输出的解决办法

    1.进windows菜单 -> show view -> console2.还是windows菜单里面 -> preferences -> 打开左边的run/debug -&g ...

  6. 转】用Mahout构建职位推荐引擎

    原博文出自于: http://blog.fens.me/hadoop-mahout-recommend-job/ 感谢! 用Mahout构建职位推荐引擎 Hadoop家族系列文章,主要介绍Hadoop ...

  7. Web常见几种攻击与预防方式

    DoS和DDoS攻击 DoS(Denial of Service),即拒绝服务,造成远程服务器拒绝服务的行为被称为DoS攻击.其目的是使计算机或网络无法提供正常的服务.最常见的DoS攻击有计算机网络带 ...

  8. Abp Framework中文文档上线

    感谢 ABP框架中国小组 给我们带来的ABP中文翻译,Web+为方便广大学习爱好者随时查阅,现推出了Gitbook风格的在线阅读文档:http://www.webplus.org.cn/documen ...

  9. Android应用开发细节点

    1.如果handler是在主线程声明,就属于主线程,handleMessage属于引用handler的那个线程:2.ByteArrayOutputStream/ByteArrayInputStream ...

  10. MySQL_将ubuntu18.04上的数据库导出并导入windows10下

    1.使用:mysqldump -uroot -p databasename>filename.sql databasename:要导出的数据库名. filename:指定导出sql文件的文件名. ...