读书笔记——《Python编程从入门到实践》第六章

读书笔记——《Python编程从入门到实践》第六章

这一章主要讲解了字典,包括:

  • 如何定义字典
  • 如何使用存在在字典里的信息
  • 如何访问和修改字典里的元素
  • 如何遍历字典
  • 集合

字典

创建字典

字典是一系列键值对的集合,字典用放在花括号内的一系列键值对表示,键和值之间使用冒号分隔,键值对之间使用逗号分隔。如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}

访问字典中的值

有两种办法可以访问字典中的值。

  • 使用方括号表示法,依次指定字典名和放在方括号内的键即可获取键对应的值,如下所示:

    person = {"name": "freedom", "age": 5}
    print(person["name"]) # 输出:freedom
    

    使用方括号访问,若访问不存在的键,则会出错。如下所示:

    person = {"name": "freedom", "age": 5}
    print(person["name1"])
    
    # 命令行输出
    Traceback (most recent call last):
      File ".\map.py", line 3, in <module>
        print(person["name1"])
    KeyError: 'name1'
    
  • 使用get方法访问,此方法有如下两种使用方法

    • get(key),指定要访问的键,若字典中对应的键存在,则返回键对应的值,若键不存在,则返回None,None是一个特殊值。示例如下所示:
      # 创建一个字典
      person = {"name": "freedom", "age": 5}
      
      # 获取字典中的值
      print(person.get("name")) # 输出:freedom
      print(person.get("school")) # 输出:None
      
    • get(key,defaultValue),若字典中存在对应的键,则返回键对应的值,否则返回默认值,如下所示:
      # 创建一个字典
      person = {"name": "freedom", "age": 5}
      
      # 获取字典中的值
      print(person.get("name", "幸福小学")) # 输出:freedom
      print(person.get("school", "幸福小学")) # 输出:幸福小学
      

删除键值对

使用del语句可以删除键值对。示例如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}
print(person) # 输出:{'name': 'freedom', 'age': 5}

# 删除字典中的键值对
del person["age"]
print(person) # 输出:{'name': 'freedom'}

修改字典中的值

要修改字典中的值,可以依次指定字典名、用方括号括起的键,以及新值即可。如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}
print(person) # 输出:{'name': 'freedom', 'age': 5}

# 修改值
person["name"] = "freedom wang"
print(person) # 输出:{'name': 'freedom wang', 'age': 5}

# 添加键值对
person["school"] = "大力小学"
print(person) # 输出:{'name': 'freedom wang', 'age': 5, 'school': '大力小学'}

字典是一个动态结构,可以随时往里添加键值对,其操作如同修改键值对。如上例所示。这表示,当键存在时,即是修改操作,当键不存在时,便是添加键值对操作。

遍历字典

我们知道字典是一系列的键值对,所以遍历字典,又可分为遍历键值对、遍历键和遍历值。

遍历键值对

通过方法items可以获取到字典的键值对,它返回一个键值对列表。在遍历的时候,可以使用语法for key,value in map.items():,其中键值对的键会赋予变量key,值会赋予变量value。如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}

# 遍历所有键值对
for key,value in person.items():
	print(f"{key}:{value}")

# 输出
name:freedom
age:5
遍历键

使用方法keys可以获取到字典的所有键,返回一个键列表。遍历字典时,默认就时遍历键。如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}

# 遍历所有的键
for key in person.keys():
	print(key)
# 输出:
name
age

# 直接遍历字典等同于遍历keys方法
for key in person:
	print(key)
# 输出
name
age
遍历值

使用方法values,可以获取到字典的值列表。如下所示:

# 创建一个字典
person = {"name": "freedom", "age": 5}

# 遍历所有的值
for value in person.values():
	print(value)
# 输出
freedom
5

集合

集合就是一组各不相同的数据,使用一对花括号来创建集合,并使用逗号来分隔元素。如下所示:

# 创建一个集合
persons = {"freedom", "ali", "freedom"}
print(persons) # 输出:{'freedom', 'ali'}

我们可以看到虽然我们定义persons集合的时候,定义了两个叫做freedom的元素,但是输出的时候,就只有一个了,那是因为集合中的元素都是不相同的。
也可以是用set方法来创建集合,传入一个列表。

names = ["freedom", "ali", "freedom"]
print(set(names)) # 输出:{'freedom', 'ali'}
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值