首页 > 编程语言 > 详细

python中的词典

时间:2021-03-18 09:53:22      阅读:28      评论:0      收藏:0      [点我收藏+]

python中的词典

键-值

字典是一系列的键-值对。每个键对应一个值,可以用键来访问对应的值。即使说,指定键之后,python会返回与之相关联的值,因此也就可以进行赋值操作。

dictionary = {‘color‘:‘green‘,‘points‘:5}
print(dictionary[‘color‘])
dictionary_point = dictionary[‘points‘] # 获取与键points相关联的值,把返回的值付给变量dictionary_point
print(dictionary_point)

添加键-值对

依次指定字典名、用方括号括起来的键和等号右边相关联的值,这一对键值会添加在词典的最后。

dictionary[‘键‘] = 值
dictionary = {‘color‘:‘green‘,‘points‘:5}
print(dictionary)
dictionary[‘x_position‘] = 0
dictionary[‘y_position‘] = 25
print(dictionary)
输出
{‘color‘: ‘green‘, ‘points‘: 5}
{‘color‘: ‘green‘, ‘points‘: 5, ‘x_position‘: 0, ‘y_position‘: 25}

修改键的值

法同添加

dictionary = {‘color‘:‘green‘,‘points‘:5}
dictionary[‘color‘] = ‘yellow‘
print(dictionary)
输出
{‘color‘: ‘yellow‘, ‘points‘: 5}

删除键-值对

dictionary = {
	‘color‘:‘green‘,
    ‘points‘:5
	}
del dictionary[‘color‘]
print(dictionary)
输出
{‘points‘: 5}

遍历键值对

information_xiaoming = {
    ‘name‘:‘xiaoming‘,
    ‘age‘: 25,
    ‘tall‘:175,
    ‘skin‘:‘yellow‘,
    ‘school‘:‘NO.25‘,
    }
for key,value in information_xiaoming.items():
    print("\n key: " + key)
    print(‘value: ‘ + str(value))
for k in infoma

for后声明的两个变量是用于存储键值对中的键和值,可以起任何变量名字。

information_xiaoming = {
    ‘name‘:‘xiaoming‘,
    ‘age‘: 25,
    ‘tall‘:175,
    ‘skin‘:‘yellow‘,
    ‘school‘:‘NO.25‘,
    }
for key,value in information_xiaoming.items():
    print("\n key: " + key)
    print(‘value: ‘ + str(value))

for k in information_xiaoming.keys():
    print(k.title())
for v in information_xiaoming.values():
    print(str(v))

for k in information_xiaoming:  #等同.key()
    print(k.title())
for k in sorted(information_xiaoming.keys()):  #排序输出key,保证秩序
    print(k.title())

方法.key()

方法key(),不仅可以遍历键,实际上它的返回值是一个列表,包含字典中的所有键

information_xiaoming = {
    ‘name‘:‘xiaoming‘,
    ‘age‘: 25,
    ‘tall‘:175,
    ‘skin‘:‘yellow‘,
    ‘school‘:‘NO.25‘,
    }
key_xiaoming = information_xiaoming.keys()
print(key_xiaoming)
if ‘age‘ in key_xiaoming:
    print(‘年龄信息完整‘)
print(type(key_xiaoming))
print(type(information_xiaoming))
输出
dict_keys([‘name‘, ‘age‘, ‘tall‘, ‘skin‘, ‘school‘])
年龄信息完整
<class ‘dict_keys‘>
<class ‘dict‘>

方法.value()

嵌套

在列表中存字典

alien_o = {‘color‘:‘green‘,‘points‘:5}
alien_1 = {‘color‘:‘yellow‘,‘points‘:10}
alien_2 = {‘color‘:‘red‘,‘points‘:15}

aliens = [alien_o,alien_1,alien_2]

for alien in aliens:
print(alien)
输出
{‘color‘: ‘green‘, ‘points‘: 5}
{‘color‘: ‘yellow‘, ‘points‘: 10}
{‘color‘: ‘red‘, ‘points‘: 15}
# 创建一个储存外星人的空列表
aliens = []

# 创建30个绿色的外星人
for alien_num in range(30):
    new_alien = {‘color‘:‘green‘,‘points‘:5,‘speed‘:‘slow‘}
    aliens.append(new_alien)

for alien in aliens[0:3]:  # 遍历的第一次把从列表aliens中获取的第一个元素(一个词典)储存在变量alien中
    if alien[‘color‘]  ==  ‘green‘:
        alien[‘color‘] = ‘yellow‘
        alien[‘points‘] = 10
        alien[‘speed‘] = ‘medium‘
    elif alien[‘color‘] == ‘yellow‘:
        alien[‘color‘] = ‘red‘
        alien[‘points‘] = 15
        alien[‘speed‘] = ‘fast‘
        

#显示前五个外星人
for alien in aliens[:5]:
    print(alien)

#显示创建了几个外星人
print(‘总共有‘ + str(len(aliens)) + ‘个外星人‘)

输出
{‘color‘: ‘yellow‘, ‘points‘: 10, ‘speed‘: ‘medium‘}
{‘color‘: ‘yellow‘, ‘points‘: 10, ‘speed‘: ‘medium‘}
{‘color‘: ‘yellow‘, ‘points‘: 10, ‘speed‘: ‘medium‘}
{‘color‘: ‘green‘, ‘points‘: 5, ‘speed‘: ‘slow‘}
{‘color‘: ‘green‘, ‘points‘: 5, ‘speed‘: ‘slow‘}
总共有30个外星人

在字典中存列表

当需要再字典中将一个键关联到多个值得时候,可以值的位置嵌套一个列表。

# 存储所点pizza的信息
pizza = {
    ‘crust‘: ‘thick‘,
    ‘toopings‘: [‘mushrooms‘,‘extra cheese‘],  # 配料 
    }
#概述所点的pizza
print("you ordered a " + pizza[‘crust‘] + "-crust pizza" + "with the following toppings:")
for tooping in pizza[‘toopings‘]:
    print(‘\t‘ + tooping)
  
  输出
you ordered a thick-crust pizzawith the following toppings:
	mushrooms
	extra cheese

在字典中存字典

user = {
    ‘xiaoming‘: {
        ‘年龄‘ :28,
        ‘性别‘ :‘男‘,
        ‘地址‘:‘上海‘
        },
    ‘xiaowang‘: {
        ‘年龄‘ :15,
        ‘性别‘ :‘女‘,
        ‘地址‘:‘广州‘
        }
    }
for user_key ,user_value in user.items():
    print("\nuser_key: " + user_key)
    print("user_value: " + str(user_value))
    print("user_value‘s type is : " + str(type(user_value)))
    print(user_key + "家在" +user_value[‘地址‘])  # 这一段for代码可以从依次遍历的过程去理解。

python中的词典

原文:https://www.cnblogs.com/lanhuakai/p/14553005.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!