PHP前端开发

python中如何创建字典

百变鹏仔 3个月前 (01-23) #Python
文章标签 字典

python字典定义

字典是另一种可变容器模型,且可存储任意类型对象。

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

d = {key1 : value1, key2 : value2 }

键一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一。

立即学习“Python免费学习笔记(深入)”;

>>>dict = {'a': 1, 'b': 2, 'b': '3'}>>> dict['b']'3'>>> dict{'a': 1, 'b': '3'}

Python中创建字典的其他常用方法:

动态分配键值

>>> d ={}>>> d['name'] = 'Allen'>>> d{'name': 'Allen'}

如果需要一次动态地建立一个字典的一个字段,那么这种方式比较合适。

字典键值表

>>> c = dict(name='Allen', age=14, gender='male')>>> c{'gender': 'male', 'age': 14, 'name': 'Allen'}

因为这种形式语法简单,不易出错,所以非常流行。

这种形式所需的代码比常量少,但是键必须都是字符串才行,所以下列代码会报错:

&gt;&gt;&gt; c = dict(name='Allen', age=14, gender='male', 1='abcd')  File "<stdin>", line 1SyntaxError: keyword can't be an expression</stdin>

字典键值元组表

&gt;&gt;&gt; e=dict([('name','Allen'),('age',21),('gender','male')])&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt;&gt; e{'gender': 'male', 'age': 21, 'name': 'Allen'}

如果你需要在程序运行时把键和值逐步建成序列,那么这种方式比较有用。

所有键的值都相同或者赋予初始值

&gt;&gt;&gt; f=dict.fromkeys(['height','weight'],'normal')&gt;&gt;&gt; f{'weight': 'normal', 'height': 'normal'}