字典(dict)
字典是key:value形式的一种表达形式,例如在Java中有map,JavaScript中的json,Redis中的hash等等这些形式。字典可以存储任意的对象,也可以是不同的数据类型。
1、字典的定义
A = dict(a=1, b=2)
A = {"name":"yangjian"}
A = dict([("name","yangjian"),("age",18)])

2、字典常用的方法

get(k)    # 返回key所对应的value
setdefault(k,v) # 如果k不存在,设置一个默认值v;如果k存在,返回k所对应的v keys() # 获得所有的keys
values() # 获得所有的values
iteritems() # 生成一个对象,每循环一次生成一个k:v for i j in d.iteritems():print(i,j) Python才有这个方法,Python3为items()
update() # m.update(n),其中m,n都是字典
pop(k) # 删除k:v对应的元素
copy() # 复制 zip(l1,l2) # 高阶函数,dict(zip(l1,l2)),把l1和l2转换成字典,其中l1,l2是列表

例子:

x = {"name":"yangjian","age":18}
print(x.get("name"))
# yangjian print(x.get("name1","hello")) # name1并不存在,所以要给一个默认值
# hello print(x.keys())
# dict_keys(['name', 'age']) print(x.values())
# dict_values(['yangjian', 18]) print(x.items()) # 字典变成列表,列表里面是元组
# dict_items([('name', 'yangjian'), ('age', 18)]) y = x.copy()
print(y)
# {'name': 'yangjian', 'age': 18} l1 = ["a","b","c"]
l2 = ["","",""]
print(dict(zip(l1,l2)))
# {'a': '1', 'b': '2', 'c': '3'}

强制类型转换

str()
int()
list()
dict()
tuple()

例子:

# 把列表l1强制转换成元组
l1 = ["a","b","c"]
print(tuple(l1))
('a', 'b', 'c')
xrange()和range()
在python3里面xrange()默认就是range()
for  i in range(0,3):
print(i)
# 结果如下
0
1
2
raw_input()和input()
在python3中已经没有raw_input(),默认只有input()
try:
name = raw_input("Please input your name:")
except Exception as e:
name = input("Please input your name:")
finally:
print("hello {0}".format(name))
len()
查看字典长度
d = {"name":"yangjian","age":18}
print(len(d))
#
type()
查看对象的类型
print(type(d))
# <class 'dict'>
isinstance()
判断一个对象是否是一个已知的类型
a = 2
print(isinstance(a,int))
# True
enumerate()
对于一个可迭代的对象(如列表、字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值。
l1 = [1,2,3,4,5]
print(enumerate(l1))
for i in enumerate(l1):
print(i)
# 结果如下
<enumerate object at 0x0000000002138708>
(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 5)
hasattr()
判断一个对象是否有某个属性
L = ["a","b","a"]
print(hasattr(L,"append"))
# True

Python数据类型-字典的更多相关文章

  1. Python 数据类型--字典类型

    字典 dict 字典是Python的另一种有序的可变数据结构,且可存储任意类型对象. 字典是一种键值对的数据容器,每个键值(key:value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典 ...

  2. python 数据类型 ----字典

    字典由一对key:value 组成的 python中常用且重量级的数据类型 1. key , keys, values 字典由一对key:value 组成的 python中常用且重量级的数据类型 1. ...

  3. python数据类型:字典dict常用操作

    字典是Python语言中的映射类型,他是以{}括起来,里面的内容是以键值对的形式储存的: Key: 不可变(可哈希)的数据类型.并且键是唯一的,不重复的. Value:任意数据(int,str,boo ...

  4. 9 python 数据类型—字典

    字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可 ...

  5. python数据类型——字典类型

    字典(dictionary) python中唯一的映射类型,采用键值对(key-value)的形式储存数据,python对key进行哈希函数运算,所以key值必须是可哈希的,可哈希表示key必须是不可 ...

  6. python初步学习-python数据类型-字典(dict)

    字典 字典类似于你通过联系人名字查找地址和联系人详细情况的地址簿,即,我们把键(名字)和值(详细情况)联系在一起.注意,键必须是唯一的,就像如果有两个人恰巧同名的话,你无法找到正确的信息. 注意,你只 ...

  7. Python数据类型--字典(dict)

    Python中的字典是键值对(key-value)的无序集合.每个元素包含"键"和"值"两部分,这两部分之间使用冒号分隔,表示一种对应关系.不同元素之间用逗号分 ...

  8. python 基础 1.5 python数据类型(四)--字典

    一.python 数据类型--字典 1.用字符串存储信息,如:存储“姓名,身高,性别”: In [1]: info='Tom 170 M' //字符串存储信息 In [3]: info[0:3] // ...

  9. python基础3 ---python数据类型二

    ython基础 一.python数据类型     ------列表(list) 1.定义:[]内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性:可存放多个不同类型的值:可修改指定索 ...

随机推荐

  1. CPU缓存一致性协议与java中的volatile关键字

    有关缓存一致性协议MESI自行百度. 提出问题:volatile在缓存一致性协议上又做了哪些事情?为啥它不保证原子性? 在缓存一致性协议下,CPU为了执行效率使用了写(存储)缓存和失效队列从而导致对用 ...

  2. Python(1):入门

    安装: 在linux中一般都自带有python2.7的版本,如果想升级python到最新的版本可以参考其他博客(http://www.cnblogs.com/lanxuezaipiao/archive ...

  3. webpack初识!

    最近在使用webpack 感觉棒棒哒 下面这个简单的教程可以让你走入webpack的世界 欢迎使用webpack 这个小教程通过简单的例子来引导大家使用webpack 通过这些这篇文章你可以学到 如何 ...

  4. RabbitMQ---3、c#实现

    1.EasyNetQ组件的使用 EasyNetQ组件的使用方式比较简单,跟很多组件都类似,例如:建立连接,进行操作做等等,对于EasyNetQ组件也是如此.(mq的升级,用于简化rabbitmq应用代 ...

  5. 【SSH网上商城项目实战27】域名空间的申请和项目的部署及发布

     转自:https://blog.csdn.net/wwww_com/article/details/54405355 前面陆陆续续的完成了网上商城的一些基本功能,虽然还有很多地方有待完善,但是不影响 ...

  6. ubuntu 配置dns访问外网

    我新建了一个虚拟机后采用的net模式 一 先配置虚拟机ip使其能在局域网内通信 1.vmware 编辑->虚拟网络编辑器 可以看到网关.掩码等信息 可以看到我们配置的ip应该在192.168.1 ...

  7. cfE. Ehab and a component choosing problem(贪心)

    题意 题目链接 给出一棵树,每个节点有权值,选出\(k\)个联通块,最大化 \[\frac{\sum_{i \in S} a_i}{k}\] Sol 结论:选出的\(k\)个联通块的大小是一样的且都等 ...

  8. 使用SVG绘制流程图

    本篇主要记录流程图的实现过程中的难点和核心技术点,先上效果图: 节点可以任意拖拽,曲线跟随变化 正在连接的线 1.节点实现 流程图是基于SVG绘制的,节点主要利用 g 和 foreignObject的 ...

  9. Java设计模式—桥梁模式

    终于又碰到了一个简单点的模式了. 桥梁模式也叫做桥接模式,定义如下:                将抽象和实现解耦,使得两者可以独立地变化. 这句话也太难理解了,桥梁模式是为了解决类继承的缺点而设计 ...

  10. ASP.NET MVC学习笔记 第一天

    MVC:Mode(模型).View(视图).Controller(控制器)         在服务器接收到请求(Request)时,路由(Routing)定义了应该调用的控制器,以及应该调用的控制器动 ...