Python 字典定义

字典

  • 能将相关信息关联起来
  • 可存储的信息几乎不受限制
# 案例1
alien_0 = {'color':'green','points':5}
print(alien_0['color'])
print(alien_0['points'])
green
5

使用字典

  • 字典是一系列键–值对,每个键与一个值相关联。
  • 用键来访问相关联的值,与键相关联的值可以是数字、字符串、列表、字典
  • 可将任何python对象用作字典中的值
  • 使用:
    • 字典放在花括号中{},一系列键值对表示
    • 键–值对是两个相关联的值,指定键时,返回与之相关联的值
    • 键和值之间用冒号分隔,键–值对之间用逗号分隔
    • 在字典中包含任意数量的键–值对

访问字典中的值

  • 获取与键相关联的值,依次指定字典名和放在方括号内的键
alien_0 = {'color':'green'}
print(alien_0['color'])
green
alien_0 = {'color':'green','points':5}
new_points = alien_0['points']
print("You just earned " + str(new_points) + "points!")
You just earned 5points!

添加键–值对

  • 字典是一种动态结构,可随时在其中添加键–值对,依次指定字典名、用方括号括起的键和相关联的值
alien_0 = {'color':'green','points':5}
print(alien_0)
alien_0['x'] = 0
alien_0['y'] = 23
print(alien_0)
{'color': 'green', 'points': 5}
{'color': 'green', 'points': 5, 'x': 0, 'y': 23}

创建一个空字典

  • 在空字典中添加键–值对更方便
  • 使用一对空的花括号,再分行添加各个键–值对
alien_0 = {}
alien_0['color'] = 'green'
alien_0['points'] = 5

print(alien_0)
{'color': 'green', 'points': 5}

修改字典中的值

  • 依次指定字典名、用方括号括起的键以及该键相关联的新值
alien_0 = {'color':'green'}
print("The alien is " + alien_0['color'] + ".")
alien_0['color'] = 'yellow'
print("The alien is now " + alien_0['color'] + ".")
The alien is green.
The alien is now yellow.
alien_0 = {'x_position': 0,'y_position': 25,'speed': 'medium'}
print("Original x_position: " + str(alien_0['x_position']))

if alien_0['speed'] == 'slow':
    x_increment = 1
elif alien_0['speed'] == 'medium':
    x_increment =2
else:
    x_increment =3
#  新位置等于老位置加上增量
alien_0['x_position'] = alien_0['x_position'] + x_increment
print("New x-position: " + str(alien_0['x_position']))
Original x_position: 0
New x-position: 2

删除键–值对

  • 对于字典中不再需要的信息,可使用del语句将相应的键–值对彻底删除
  • 使用del语句时,必须指定字典名和要删除的键
  • 删除的键–值对永远消失
alien_0 = {'color': 'green','points':5}
print(alien_0)

del alien_0['points']
print(alien_0)
{'color': 'green', 'points': 5}
{'color': 'green'}

由对象组成字典

  • 对于较长的列表和字典,大多数编辑器都有以类似方式设置其格式的功能。对于较长的字典,还有其他一些可行的格式设置方式,因此在你的编辑器或其他源代码中,你可能会看到稍微不同的格式设置方式。
favorite_languages = {
    'jen': 'python',
    'sarah': 'c',
    'edward': 'ruby',
    'phil':'python'
    }
print("Sarah's favorite language is " + 
      favorite_languages['sarah'].title() + 
      ".")
Sarah's favorite language is C.

练习

# 1.人
#使用一个字典来存储一个熟人的信息,包括名、姓、年龄和居住的城市。
#该字典应包含键 first_name 、 last_name 、 age 和 city 。将存储在该字典中
#的每项信息都打印出来。
people = {
    'first_name': 'li',
    'last_name': 'yege',
    'age': '23',
    'city': 'Beijing'
    }
print("姓:" + people['first_name'])
print("名:" + people['last_name'])
print("年龄:" + people['age'])
print("城市:" + people['city'])
姓:li
名:yege
年龄:23
城市:Beijing
# 2.喜欢的数字
#使用一个字典来存储一些人喜欢的数字。请想出 5 个人的名字,并将这些名字用作字典
#中的键;想出每个人喜欢的一个数字,并将这些数字作为值存储在字典中。
#打印每个人的名字和喜欢的数字。为让这个程序更有趣,通过询问朋友确保数据是真实的。
numbers = {
   'zhangsan': 6,
   'lisi': 8,
    'wangmazi': 100,
    'yegeli': 8888,
    'wangdana': 6666
    }
print("zhangsan favorite number is " + str(numbers['zhangsan']))
print("lisi favorite number is " + str(numbers['lisi']))
print("wangmazi favorite number is " + str(numbers['wangmazi']))
print("yegeli favorite number is " + str(numbers['yegeli']))
print("wangdana favorite number is " + str(numbers['wangdana']))
zhangsan favorite number is 6
lisi favorite number is 8
wangmazi favorite number is 100
yegeli favorite number is 8888
wangdana favorite number is 6666
# 3.词汇表
# Python 字典可用于模拟现实生活中的字典,但为避免混淆,我们将后者称为词汇表。
# 想出你在前面学过的 5 个编程词汇,将它们用作词汇表中的键,并将它们的含义作为值存储在词汇表中。
# 以整洁的方式打印每个词汇及其含义。为此,你可以先打印词汇,在它后面加上一个冒号,再打印词汇的含义;也可在一行打印词汇,再使用换行符( \n )插
# 入一个空行,然后在下一行以缩进的方式打印词汇的含义。
words = {
    'title': '首字母大写',
    'upper': '所有字母大写',
    'lower': '所有字母小写',
    'append': '列表尾部插入一元素',
    'pop': '列表中删除一元素'
}
word = 'title'
print("\n" + word.title() + "的含义是:" + words['title'] + ".")
word = 'upper'
print("\n" + word.upper() + "的含义是:" + words['upper'] + ".")
word = 'lower'
print("\n" + word.lower() + "的含义是:" + words['lower'] + ".")
word = 'append'
print("\n" + word.title() + "的含义是:" + words['append'] + ".")
word = 'pop'
print("\n" + word.title() + "的含义是:" + words['pop'] + ".")
Title的含义是:首字母大写.

UPPER的含义是:所有字母大写.

lower的含义是:所有字母小写.

Append的含义是:列表尾部插入一元素.

Pop的含义是:列表中删除一元素.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

YEGE学AI算法

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值