Python 基础之字典(dict)的用法

python dict字典
字典是Python中唯一的内建映射类型,字典中的数据没有特定的顺序,可以通过特定的键(key)来存取数据。键可以是数字、元组或字符串,但不能是列表。

字典的常用方法:
1.1 clear()方法
1.2 copy()方法
1.3 fromkeys()方法
1.4 get()方法
1.5 has_key()方法
1.6 items、iteritems方法
1.7 keys、iterkeys
1.8 popitem()方法
1.9 setdefault()方法
1.10 update()方法
1.11 values、itervalues方法

字典的创建及存取数据操作:
1.1字面量创建
user_info={                     #创建字典
	"name":"james",
	"user_id":1122,
	"addr":"python home"
}
print user_info					#打印整个字典的数据
print user_info[‘name‘]			#取user_info字典中,键为name的值
print user_info[‘addr‘]			#取user_info字典中,键为addr的值
运行结果:
{‘user_id‘: 1122, ‘name‘: ‘james‘, ‘addr‘: ‘python home‘}
james
python home
[Finished in 0.1s]

1.2 dict()函数创建字典
list_user=[("name","Hugh"),("user_id",123456),("Hobby","python , java")]
print dict(list_user)				#dict()函数创建字典
print dict(list_user)["name"]		#取生成字典后的键name的值
print dict(list_user)[‘Hobby‘]		#取生成字典后的键Hobby的值
运行结果:
{‘Hobby‘: ‘python , java‘, ‘user_id‘: 123456, ‘name‘: ‘Hugh‘}
Hugh
python , java
[Finished in 0.2s]

1.3 dict()函数创建字典
user_info=dict(name="Jason",age=18,Hobby="python,java")		#创建字典
print user_info
运行结果:
{‘Hobby‘: ‘python,java‘, ‘age‘: 18, ‘name‘: ‘Jason‘}
[Finished in 0.3s]

1.4 字典赋值
fruit={}                  #创建空字典
fruit[‘apple‘]="12.18"	  #添加数据
fruit[‘banana‘]="0.89"
print fruit
运行结果:
{‘apple‘: ‘12.18‘, ‘banana‘: ‘0.89‘}
[Finished in 0.2s]

字典的基础操作:
len()函数,用于返回字典中键-值对的数量(字典的长度)
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print len(color)   #获取color字典的长度
运行结果:
5

in 关键字,用于检查字典中是否存在指定的键(key)
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print ‘red‘ in color      #检查red是否存在color字典中,存在则返回True,反之返回false
运行结果:
True

del 关键字,用于删除字典中指定的键-值对
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
del color[‘blue‘]    #删除color中blue的键-值数据
print color
运行结果:
{‘black‘: 44, ‘White‘: 55, ‘green‘: 33, ‘red‘: 11}
[Finished in 0.2s]

clear()方法,用于清除字典中所有的项。
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
color.clear()    #清除color中的所有项
print color
运行结果:
{}
[Finished in 0.2s]

copy()方法,用于复制字典
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
copy_color=color.copy()
print copy_color
运行结果:
{‘blue‘: 22, ‘green‘: 33, ‘White‘: 55, ‘black‘: 44, ‘red‘: 11}
[Finished in 0.1s]

fromkeys()方法,用于给定的键,建立新的字典,因此每个键都对应一个默认的值None。
print {}.fromkeys([‘name‘,‘user_id‘,‘Hobby‘])   #根据指定键,创建字典,默认值为None
运行结果:
{‘Hobby‘: None, ‘user_id‘: None, ‘name‘: None}
[Finished in 0.1s]

print dict.fromkeys([‘name‘,‘user_id‘,‘Hobby‘])   ##根据指定键,创建字典,默认值为None
运行结果:
{‘Hobby‘: None, ‘user_id‘: None, ‘name‘: None}
[Finished in 0.1s]

get()方法,用于访问字典项的方法,当访问一个不存在的键时,没有任何异常,而得到一个默认值None,也可以自定义默认值。
dict_a={}
print dict_a.get(‘name‘,‘not fount‘)     #获取dict_a字典name的值,找不到返回not fount
运行结果:
not fount
[Finished in 0.1s]

has_key()方法,用于检查特定的键(key)是否含有特定的键,与 in 关键字的效果差不多。
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.has_key("red")    #检查color中是否含有red键,如果找到则返回True,反之返回false
运行结果:
True
[Finished in 0.1s]

items、iteritems
item方法,用于将字典所有的项按列表的形式返回,iteritems与items差不过,不过iteritems返回的是一个迭代器。
items()方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.items()   #将字典转化为列表的形式
运行结果:
[(‘blue‘, 22), (‘black‘, 44), (‘White‘, 55), (‘green‘, 33), (‘red‘, 11)]
[Finished in 0.2s]

iteritems()方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.iteritems()   #将字典转化为列表的形式,返回一个迭代器
print list(color.iteritems())   #打印迭代器的数据
运行结果:
<dictionary-itemiterator object at 0x021405D0>    #迭代器
[(‘blue‘, 22), (‘black‘, 44), (‘White‘, 55), (‘green‘, 33), (‘red‘, 11)]
[Finished in 0.2s]

keys、iterkeys
keys方法,用于将字典中所有键转换为列表的形式,而iterkeys与keys差不多,不过iterkeys返回的是一个迭代器。
keys()方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.keys()   #将字典的所有键转化为列表的形式
运行结果:
[‘blue‘, ‘black‘, ‘White‘, ‘green‘, ‘red‘]
[Finished in 0.2s]

iterkeys()方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.iterkeys()   #将字典的所有键转化为列表的形式,返回一个迭代器
print list(color.iterkeys())   #打印迭代器的数据
运行结果:
<dictionary-keyiterator object at 0x021B05D0>
[‘blue‘, ‘black‘, ‘White‘, ‘green‘, ‘red‘]
[Finished in 0.2s]

popitem()方法,用于随机移除字典中项(键-值对),并返回被移除的项,因为字典中没有最后一项的说法,所有的项都是随机排序。
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.popitem()  #随机移除color中的一项,并返回移除的(键-值对)
print color
运行结果:
(‘blue‘, 22)
{‘black‘: 44, ‘White‘: 55, ‘green‘: 33, ‘red‘: 11}
[Finished in 0.2s]

setdefault()方法,用于获取字典指定键的值,与get方法类似,不过,如果字典中无该键,则将其添加到字典中。
user_info={}
print user_info.setdefault(‘name‘)   #获取user_info中的name,如果没有则将name添加到字典中,值默认为Nome
print user_info
运行结果:
None
{‘name‘: None}
[Finished in 0.2s]

找不到指定键,添加后并给定默认值
user_info={}
print user_info.setdefault(‘Hobby‘,‘python‘) #如果获取不到Hobby,则将其添加到字典中,并给定值为:Python
print user_info
运行结果:
python
{‘Hobby‘: ‘python‘}
[Finished in 0.2s]

update()方法,将一个字典更新到另一个字典中。
user_info={
	‘name‘:‘james‘,
	‘user_id‘:‘123456‘
}
H={
	‘Hobby‘:‘python , java‘
}
user_info.update(H) #将字典H中的项,添加到user_info中
print user_info
运行结果:
{‘Hobby‘: ‘python , java‘, ‘user_id‘: ‘123456‘, ‘name‘: ‘james‘}
[Finished in 0.3s]

values、itervalues
values方法,用于将字典中所有值转换为列表形式,itervalues与values差不多,但是,itervalues返回的是一个迭代器。
values方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.values()   #将字典中的所有值转换为列表
运行结果:
[22, 44, 55, 33, 11]
[Finished in 0.2s]

itervalues()方法
color={‘red‘:11,‘blue‘:22,‘green‘:33,‘black‘:44,‘White‘:55}
print color.itervalues()   #将字典中的所有值转换为列表,返回一个迭代器
print list(color.itervalues())
运行结果:
<dictionary-valueiterator object at 0x021E05D0>
[22, 44, 55, 33, 11]
[Finished in 0.2s]

  

原文地址:https://www.cnblogs.com/JcHome/p/10090941.html

时间: 2024-10-01 03:43:34

Python 基础之字典(dict)的用法的相关文章

Python基础之字典dict(薄弱环节重点回顾,记不住打死自己)

字典是我Python基础里面学的最薄弱的环节,重新回顾,务必深入骨髓. Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,字典是另 一种可变容器模型,且可存储任意类型对象.具有极快的查找速度. 字典是一种通过名字或者关键字引用的得数据结构,其键可以是数字.字符串.元组.布尔值也可以,这种结构类型也称之为映射.字典类型是Python中唯一內建的映射类型. 重点就是字典的键必须是可以被哈希的,什么叫可以被哈希我说不上来,简单的说就是不可变对象. a=

python基础之字典dict

不可变数据类型:tuple.bool.int.str --可哈希类型可变数据类型:list.dict.set --不可哈希类型dict-key 必须是不可变数据类型,可哈希dict-value 任意数据类型dict 优点:二分查找.存储大量的关系型数据 特点:无序的-没有索引,只能按照键值对查找增:dict[key] = value dict.setdefault(key) dict.setdefault(key ,value)删:dict.pop(key) dict.pop(key,retur

Python基础入门—字典dict

目录 字典 字典的定义 字典对象增加元素 字典对象元素删除 字典对象的修改 字典对象元素的查找 字典的深浅拷贝 字典 字典是一种可变数据类型 点典的元素存储方式是键值对的形式,键值对之间用逗号隔开 键值对的形式形如:key:value 最外层用{}括起来 d = {key1 : value1, key2 : value2 } 由于字典是键值对的形式,所以字典是无序的,自然不能切片和索引,而是通过键来取值 键:一般是唯一的,如果重复最后的一个键值对会替换前面的,值不需要唯一 值:可以取任何数据类型

python基础之字典及字符

python基础之字典及字符串处理 本节内容 字典介绍及内置方法 字符串处理 1.字典介绍及内置方法 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且key必须是可哈希的.可哈希表示key必须是不可变类型,如:数字.字符串.元组. 字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型.列表是有序的对象结合,字典是无序的对象集合.两者

python入门14 字典dict

字典dict是无序的key:value格式的数据序列 #coding:utf-8 #/usr/bin/python """ 2018-11-11 dinghanhua 字典 """ '''dict 无序的key:value组合 key要是不可变类型,如数字.字符串.元组 key不可重复,重复的会被最后一个覆盖 ''' dict_id = {'1':'python','2':'java','3':'javascript','4':'go','2':

Python基础知识---字典

现在在实习期间,好久没用Python了,今天在做Java项目时用的HashMap让我联想到了Python中的字典,就写一些Python字典的知识吧,复习复习. 字典:  key --> value的映射关系,字典是无序性的,字典的key是不可变类型的,如int, str, float,tuple... 1.创建字典 (1)第一种方式创造字典,一次给全 >>> user = {'id': 1000, 'name': 'scd', 'password':'123'} >>&

Python 全栈开发二 python基础 字符串 字典 集合

一.字符串 1,在python中,字符串是最为常见的数据类型,一般情况下用引号来创建字符串. 1 >>ch = "wallace" 2 >>ch1 = 'wallace' 3 >>ch2 = ''' 4 wallace 5 wallace 6 wallace 7 ''' 8 #以上三种引号都可以定义一字符串, 9 #三引号定义的字符串可以换行 注意:字符串是不可变的数据类型,关于可变与不可变将会在后文解释. 2,转义字符 在python中有一些字符是

Python 基础 4-1 字典入门

引言 字典 是Python 内置的一种数据结构,它便于语义化表达一些结构数据,字典是开发中常用的一种数据结构 字典介绍 字典使用花括号 {} 或 dict 来创建,字典是可以嵌套使用的 字典是成对出现的,字典以键(key)值(value)对形式体现 键与值之间用冒号 : 分隔,每个键值对之间用逗号 , 分隔开 字典的 key 是唯一的,而 value 可以重复出现 字典的 key 不使用中文或其他字符,这是业内约定俗成的做法 创建字典 字典可以使用花括号 {} 或 dict 函数来创建 1. 使

Python 基础数据类型之dict

字典是另一种可变容器模型,且可存储任意类型对象.字典的每个键值(key=>value)对用冒号(:)分割,每个对之间用逗号(,)分割,整个字典包括在花括号({})中 ,格式如下所示:d = {key1 : value1, key2 : value2 }键必须是唯一的,但值则不必.值可以取任何数据类型,但键必须是不可变的,如字符串,数字或元组. 1.字典的定义 dict1 = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'} dict2 = {'