亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

Python - 字典

上一页下一页

每个键与其值用冒号 (:) 分隔,项目用逗号分隔,整个内容用花括号括起来。一个没有任何项目的空字典只用两个花括号编写,如下所示:{}。

键在字典中是唯一的,而值可能不是。字典的值可以是任何类型,但键必须是不可变的数据类型,例如字符串、数字或元组。

访问字典中的值

要访问字典元素,您可以使用熟悉的方括号和键来获取其值。以下是一个简单的例子 -

现场演示
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Name']: ", dict['Name']
print "dict['Age']: ", dict['Age']

执行上述代码时,会产生以下结果 -

dict['Name']:  Zara
dict['Age']:  7

如果我们尝试使用不属于字典的键访问数据项,则会收到如下错误 -

现场演示
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
print "dict['Alice']: ", dict['Alice']

执行上述代码时,会产生以下结果 -

dict['Alice']:
Traceback (most recent call last):
   File "test.py", line 4, in <module>
      print "dict['Alice']: ", dict['Alice'];
KeyError: 'Alice'

更新词典

您可以通过添加新条目或键值对、修改现有条目或删除现有条目来更新字典,如下简单示例所示 -

现场演示
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
dict['Age'] = 8; # update existing entry
dict['School'] = "DPS School"; # Add new entry

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

执行上述代码时,会产生以下结果 -

dict['Age']:  8
dict['School']:  DPS School

删除字典元素

您可以删除单个字典元素或清除字典的全部内容。您还可以在一次操作中删除整个字典。

要显式删除整个字典,只需使用 del 陈述。以下是一个简单的例子 -

现场演示
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
del dict['Name']; # remove entry with key 'Name'
dict.clear();     # remove all entries in dict
del dict ;        # delete entire dictionary

print "dict['Age']: ", dict['Age']
print "dict['School']: ", dict['School']

这会产生以下结果。请注意,由于在 del dict 之后引发了异常 字典不存在了 -

dict['Age']:
Traceback (most recent call last):
   File "test.py", line 8, in <module>
      print "dict['Age']: ", dict['Age'];
TypeError: 'type' object is unsubscriptable

注意 − del() 方法在下一节讨论。

字典键的属性

字典值没有限制。它们可以是任意 Python 对象,可以是标准对象,也可以是用户定义的对象。但是,对于键来说,情况并非如此。

关于字典键有两点需要记住 -

(a) 每个键不允许超过一个条目。这意味着不允许重复密钥。当分配过程中遇到重复键时,最后一个分配获胜。例如 -

现场演示
#!/usr/bin/python

dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'}
print "dict['Name']: ", dict['Name']

执行上述代码时,会产生以下结果 -

dict['Name']:  Manni

(b) 键必须是不可变的。这意味着您可以使用字符串、数字或元组作为字典键,但不允许使用 ['key'] 之类的东西。以下是一个简单的例子 -

现场演示
#!/usr/bin/python

dict = {['Name']: 'Zara', 'Age': 7}
print "dict['Name']: ", dict['Name']

执行上述代码时,会产生以下结果 -

Traceback (most recent call last):
   File "test.py", line 3, in <module>
      dict = {['Name']: 'Zara', 'Age': 7};
TypeError: unhashable type: 'list'

内置字典函数和方法

Python 包含以下字典函数 -

Sr.No. 函数说明
1 cmp(dict1, dict2)

比较两个字典的元素。

2 len(字典)

给出字典的总长度。这将等于字典中的项目数。

3 str(字典)

生成字典的可打印字符串表示

4 类型(变量)

返回传递变量的类型。如果传递的变量是字典,则返回字典类型。

Python 包括以下字典方法 -

Sr.No. 带描述的方法
1 dict.clear()

删除字典 dict 的所有元素

2 dict.copy()

返回字典 dict 的浅拷贝

3 dict.fromkeys()

使用来自 seq 的键和值 set 创建一个新字典 到 .

4 dict.get(key, default=None)

对于 键,如果键不在字典中,则返回值或默认值

5 dict.has_key(key)

返回 true 如果在字典 dict 中键入 , 否则

6 dict.items()

返回 dict 的列表 的(key, value)元组对

7 dict.keys()

返回字典 dict 的键列表

8 dict.setdefault(key, default=None)

类似于 get(),但如果 key 将设置 dict[key]=default 不在字典中

9 dict.update(dict2)

添加字典 dict2 的键值对到 dict

10 dict.values()

返回字典列表 dict 价值观


Python

  1. Python 数据类型
  2. Python 运算符
  3. Python pass 语句
  4. Python 函数参数
  5. Python字典
  6. Python 迭代器
  7. Python 闭包
  8. Python 日期时间
  9. Python - 概述
  10. Python - 数字
  11. Python - 字符串
  12. Python - 元组