Python中字典的基本知识初步介绍

   这篇文章主要介绍了Python中字典的基本知识初步介绍,是Python入门中的基础知识,需要的朋友可以参考下

  字典是可变的,并且可以存储任意数量的Python对象,包括其他容器类型另一个容器类型。字典包括键对(称为项目)及其相应的值。

  Python字典也被称为关联数组或哈希表。字典的一般语法如下:

  ?

1

dict = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}

  可以用下面的方式创建字典:

  ?

1
2

dict1 = { 'abc': 456 };
dict2 = { 'abc': 123, 98.6: 37 };

  每个按键都来自它的值用冒号(:),该项目以逗号分隔,整个事情是包含在大括号分隔。没有任何项目一个空的字典是写只有两个大括号,就像这样:{}

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

  访问字典的值:

  要访问字典元素,您可以使用熟悉的方括号一起的关键,获得它的值。下面是一个简单的例子:

  ?

1
2
3
4
5
6

#!/usr/bin/python
 
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
 
print "dict['Name']: ", dict['Name'];
print "dict['Age']: ", dict['Age'];

  当执行上面的代码中,产生以下结果:

  ?

1
2

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

  如果要访问一个不存在的键,这会得到一个错误,如下所示:

  ?

1
2
3
4
5

#!/usr/bin/python
 
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};
 
print "dict['Alice']: ", dict['Alice'];

  当执行上面的代码,产生以下结果:

  ?

1
2
3
4
5

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

  更新字典:

  可以通过添加一个新条目或项目(即一个键 - 值对),修改现有条目或删除。作为简单的例子,如下图所示在现有条目更新字词:

  ?

1
2
3
4
5
6
7
8
9
10

#!/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'];

  当执行上面的代码,产生以下结果:

  ?

1
2

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

  删除字典元素:

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

  要删除整个字典,只要用del语句。下面是一个简单的例子:

  ?

1
2
3
4
5
6
7
8
9
10

#!/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删除,字典已经不存在了:

  ?

1
2
3
4
5

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对象,无论是标准的对象或用户定义的对象。但是作为键,是不可以这样的。

  要记住字典中的键的两个要点:

  (一)不准一个键对应多个条目。这意味着不能有重复的键。当有重复的键,在分配过程中以最后分配的为准。下面是一个简单的例子:

  ?

1
2
3
4
5

#!/usr/bin/python
 
dict = {'Name': 'Zara', 'Age': 7, 'Name': 'Manni'};
 
print "dict['Name']: ", dict['Name'];

  当执行上面的代码,产生以下结果:

  ?

1

dict['Name']: Manni

  (二)键的值字必须是不可变的。这意味着可以使用字符串,数字或元组作为字典的键,但像['key']是不允许的。下面是一个简单的例子:

  ?

1
2
3
4
5

#!/usr/bin/python
 
dict = {['Name']: 'Zara', 'Age': 7};
 
print "dict['Name']: ", dict['Name'];

  当执行上面的代码,产生以下结果:

  ?

1
2
3
4

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

时间: 2025-01-02 11:21:32

Python中字典的基本知识初步介绍的相关文章

python中字典dict常用操作方法实例总结_python

本文实例总结了python中字典dict常用操作方法.分享给大家供大家参考.具体如下: 下面的python代码展示python中字典的常用操作,字典在python开发中有着举足轻重的地位,掌握字典操作相当重要 #创建一空字典 x = {} #创建包含三个项目的字典 x = {"one":1, "two":2, "three":3} #访问其中的一个元素 x['two'] #返回字典中的所有键列表 x.keys() #返回字典中的所有值列表 x.v

Python中的random()方法的使用介绍

这篇文章主要介绍了Python中的random()方法的使用,是Python入门的基础知识,需要的朋友可以参考下     random()方法返回一个随机浮点数r,使得0是小于或等于r 以及r小于1. 语法 以下是random()方法的语法: ? 1 random ( ) 注意:此函数是无法直接访问的,所以我们需要导入random模块,然后我们需要使用random对象来调用这个函数. 参数 NA 返回值 此方法返回一个随机浮点数r,使得0是小于或等于r以及r小于1. 例子 下面的例子显示了ran

Python中字典创建、遍历、添加等实用操作技巧合集

  字段是Python是字典中唯一的键-值类型,是Python中非常重要的数据结构,因其用哈希的方式存储数据,其复杂度为O(1),速度非常快.下面列出字典的常用的用途. 一.字典中常见方法列表 代码如下: #方法 #描述 ------------------------------------------------------------------------------------------------- D.clear() #移除D中的所有项 D.copy() #返回D的副本 D.fr

python中的内置函数getattr()介绍及示例_python

在python的官方文档中:getattr()的解释如下: getattr(object, name[, default]) Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object's attributes, the result is the value of that attribute. For examp

Python中字典和JSON互转操作实例_python

JSON是一种轻量级的数据交换格式,各种语言都有良好的支持.字典是Python的一种数据结构.可以看成关联数组. 有些时候我们需要设计到字典转换成JSON序列化到文件,或者从文件中读取JSON.简单备忘一下. Dict转JSON写入文件 复制代码 代码如下: #!/usr/bin/env python # coding=utf-8 import json d = {'first': 'One', 'second':2} json.dump(d, open('/tmp/result.txt', '

python中的五种异常处理机制介绍_python

从几年前开始学习编程直到现在,一直对程序中的异常处理怀有恐惧和排斥心理.之所以这样,是因为不了解.这次攻python,首先把自己最畏惧和最不熟悉的几块内容列出来,里面就有「异常处理」这一项. <Dive into Python>并没有专门介绍异常处理,只是例子中用到的时候略微说明了一下.今天下载<Learn Python>,直接进异常处理这块.这一部分有四章,第一章讲解异常处理的一般使用方法,后面的章节深入地讨论其机制.我目前只看了第一章,先学会用,以后有必要的时候再扩展阅读. p

Python中的下划线的用法介绍

单划线(_) 在解释器中 在解释器中,_代表交互式解释器会话中上一条的执行结果.这种用法有点类似于Linux中的上一条命令的用法.只不过在在Python解释器中表示的上一条执行的结果. >>> "alright" 'alright' >>> _ 'alright 作为一个名称 作为临时性的名称使用,但是在后面不会再次用到该名称.这种用法在循环中会经常用到. for _ in range(10):     do_something() 作为函数的连接符

Python中字典(dict)和列表(list)的排序方法实例_python

一.对列表(list)进行排序 推荐的排序方式是使用内建的sort()方法,速度最快而且属于稳定排序 复制代码 代码如下: >>> a = [1,9,3,7,2,0,5]>>> a.sort()>>> print a[0, 1, 2, 3, 5, 7, 9]>>> a.sort(reverse=True)>>> print a[9, 7, 5, 3, 2, 1, 0]>>> b = ['e','a'

PYTHON中字典GET方法小例子

Python定义一个字典:dict = {'iphone':'apple','xiaomi','xiaomi','huawei':'hua'},那么我要查找键名为xiaomi对应的值,如果我们知道存在这个键,直接dict['xiaomi']就好了,但是要判断有没有这个键存在怎么办呢? 如图,判断roledict中有没有owner这个键,第一个方法:   if 'owner' in roledict:  owner = roledict['owner'] else:  owner = admin