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. Python实现判断回文串

    回文数的概念:即是给定一个数,这个数顺读和逆读都是一样的.例如:121,1221,a,aa是回文数,123,1231不是回文数.  while 1: String = input('请先输入一个字符串 ...

  2. UOJ228 简单数据结构练习题

    Description 传送门 维护一个数列, 有以下操作: 对[l,r]同时加上x 把[l,r]开根后下取整. 查询[l,r]之和 n,m \(\leq\)$ 100000, $\(a_i,x \l ...

  3. codeforces 570 D. Tree Requests (dfs)

    题目链接: 570 D. Tree Requests 题目描述: 给出一棵树,有n个节点,1号节点为根节点深度为1.每个节点都有一个字母代替,问以结点x为根的子树中高度为h的后代是否能够经过从新排序变 ...

  4. Monkey Banana Problem LightOJ - 1004

    Monkey Banana Problem LightOJ - 1004 错误记录: 1.数组开小2.每组数据数组没有清空 #include<cstdio> #include<cst ...

  5. 贪心 Codeforces Round #173 (Div. 2) B. Painting Eggs

    题目传送门 /* 题意:给出一种方案使得abs (A - G) <= 500,否则输出-1 贪心:每次选取使他们相差最小的,然而并没有-1:) */ #include <cstdio> ...

  6. Base64编码与解码 分类: 中文信息处理 2014-11-03 21:58 505人阅读 评论(0) 收藏

    Base64是一种将二进制转为可打印字符的编码方法,主要用于邮件传输.Base64将64个字符(A-Z,a-z,0-9,+,/)作为基本字符集,把所有符号转换为这个字符集中的字符. 编码: 编码每次将 ...

  7. 选择排序 分类: 算法 c/c++ 2014-10-10 20:32 509人阅读 评论(0) 收藏

    选择排序(假设递增排序) 每次选取从当前结点到末尾结点中最小的一个与当前结点交换,每一轮固定一个元素位置. 时间复杂度O(n^2),空间复杂度O(1).下面的示例代码以带头结点的链表为存储结构: #i ...

  8. Android 内存溢出处理方案

    转自 : http://www.cnblogs.com/hello-ruby/archive/2013/04/19/3031098.html 首先我们来看看android内存溢出的原因,有可能是: 由 ...

  9. Java中的流(4)InputStream,InputStreamReader,BufferedReader关系

    InputStream是字节流,InputStreamReader将字节流转成字符流,BufferedReader将字符流转成字符缓冲,开始读字符. 1.InputStream.OutputStrea ...

  10. iOS9 关于明文HTTP报错的修复方法

    报错:App Transport Security has blocked a cleartext HTTP (http://) resource load since it is insecure. ...