详解Python中映射类型(字典)操作符的概念和使用

详解Python中映射类型(字典)操作符的概念和使用

在Python中,字典(dictionary)是一种映射类型(mapping type),它是一组以 key-value 形式存储的数据结构。在字典中,每一个 key 都唯一地对应一个 value。

字典的基本操作

创建字典

可以使用大括号 {}dict 函数来创建字典。例如:

# 使用大括号创建空字典
my_dict = {}

# 使用大括号创建非空字典
my_dict = {'name': 'Alice', 'age': 18}

# 使用 dict 函数创建字典
my_dict = dict(name='Alice', age=18)

字典的访问操作

字典中的元素可以通过 key 访问。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 访问字典的元素
print(my_dict['name'])  # 输出:Alice
print(my_dict['age'])  # 输出:18

注意,如果访问一个不存在的 key,会抛出 KeyError 异常:

my_dict = {'name': 'Alice', 'age': 18}

try:
    print(my_dict['phone'])
except KeyError as e:
    print(f'KeyError: {e}')  # 输出:KeyError: 'phone'

可以使用 get 方法来避免上述异常,如果 key 不存在,则返回 None 或一个给定的默认值。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 使用 get 方法获取字典中的元素
print(my_dict.get('name'))  # 输出:Alice
print(my_dict.get('phone'))  # 输出:None

# 也可以指定默认值
print(my_dict.get('phone', 'Not Found'))  # 输出:Not Found

字典的修改操作

可以通过 key 直接修改字典中的元素。如果 key 不存在,则会将该元素添加到字典中。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 修改或添加元素
my_dict['name'] = 'Bob'
my_dict['phone'] = '+86 18888888888'

print(my_dict)  # 输出:{'name': 'Bob', 'age': 18, 'phone': '+86 18888888888'}

字典的删除操作

可以使用 del 关键字删除字典中的元素或整个字典。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 删除某个元素
del my_dict['name']

print(my_dict)  # 输出:{'age': 18}

# 删除整个字典
del my_dict

# 会抛出 NameError,因为 my_dict 已被删除
print(my_dict)

字典操作符

in 操作符

in 操作符可以用来检查字典中是否存在指定的 key。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 判断 key 是否存在
if 'name' in my_dict:
    print('name exists')  # 输出:name exists

if 'phone' in my_dict:
    print('phone exists')  # 不输出

not in 操作符

in 操作符相反的是 not in 操作符,它可以用来检查字典中是否不存在指定的 key。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 判断 key 是否不存在
if 'phone' not in my_dict:
    print('phone does not exist')  # 输出:phone does not exist

if 'name' not in my_dict:
    print('name does not exist')  # 不输出

len 函数

len 函数可以用来获取字典中元素的数量。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 获取字典中元素的数量
print(len(my_dict))  # 输出:2

字典遍历

可以使用 items 方法来遍历字典中的每一个 key-value 对。例如:

my_dict = {'name': 'Alice', 'age': 18}

# 遍历字典
for key, value in my_dict.items():
    print(f'{key}: {value}')

输出结果为:

name: Alice
age: 18

示例

使用字典统计单词出现次数

以下代码使用字典统计一段文本中每一个单词出现的次数:

text = 'This is a sample text to demo how to use Python dictionary'

word_count = {}

# 拆分单词,统计出现次数
for word in text.split():
    if word in word_count:
        word_count[word] += 1
    else:
        word_count[word] = 1

# 输出每一个单词出现的次数
for word, count in word_count.items():
    print(f'{word}: {count}')

输出结果为:

This: 1
is: 1
a: 1
sample: 1
text: 1
to: 1
demo: 1
how: 1
use: 1
Python: 1
dictionary: 1

使用字典实现 switch-case 语句

Python 中并没有 switch-case 语句,但我们可以使用字典来实现类似的功能。以下代码演示如何使用字典实现一个计算器的功能:

def add(x, y):
    return x + y

def sub(x, y):
    return x - y

def mul(x, y):
    return x * y

def div(x, y):
    return x / y

# 定义操作符对应的函数
ops = {
    '+': add,
    '-': sub,
    '*': mul,
    '/': div
}

# 获取用户输入的数值和操作符
x = float(input('请输入第一个数:'))
op = input('请输入操作符:')
y = float(input('请输入第二个数:'))

# 执行操作符对应的函数
result = ops[op](x, y)

# 输出结果
print(f'{x} {op} {y} = {result}')

运行结果如下:

请输入第一个数:6
请输入操作符:*
请输入第二个数:9
6.0 * 9.0 = 54.0

以上就是字典的基本操作和操作符的概念和使用的详细讲解,希望对你有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解Python中映射类型(字典)操作符的概念和使用 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • Python中正则表达式的巧妙使用一文包你必掌握正则

    Python中正则表达式的巧妙使用 正则表达式是一种强大的文本处理工具,可以用于各种文本处理任务,如数据清洗、文本分析、信息提取等。在Python中,我们可以使用模块来操作正则表达式。本攻略将介绍Python中正则表达式的巧妙使用,帮助您更好地掌握正则表达式的用法。 re.match()函数 re.match()函数用于从字符串的起始位置匹配一个模式。如果字…

    python 2023年5月14日
    00
  • Python中集合类型(set)学习小结

    Python中集合类型(set)学习小结 概述 Python中的集合(set)是一种用于存储无序但唯一元素的数据类型。它基于数学中的集合概念,并且支持集合的各种数学运算。集合可以包含任何可哈希的数据类型,但集合本身是不可哈希的,而且没有顺序。 与列表和元组不同,集合没有索引,因此不能通过索引访问元素。但是,集合支持的操作范围更广,比如交集、并集、差集等等。 …

    python 2023年5月13日
    00
  • 使用Python解析JSON数据的基本方法

    当使用Python解析JSON数据时,可以使用内置的json模块。下面是解析JSON数据的基本方法: 将JSON数据加载到Python中 使用json模块的load()或loads()函数可以将JSON数据加载到Python中。load()函数从文件中读取JSON数据,而loads()函数从字符串中读取JSON数据。以下是一个从字符串中加载JSON数据的示例…

    python 2023年5月14日
    00
  • python基于win32api实现键盘输入

    Python基于win32api实现键盘输入的攻略如下: 安装pywin32库 在Python中使用win32api需要安装pywin32库。打开终端窗口输入以下命令进行安装: pip install pywin32 导入所需库 使用win32api需要导入三个库: import win32api import win32con import time wi…

    python 2023年5月19日
    00
  • jQuery计算textarea中文字数(剩余个数)的小程序

    下面是详细的 jQuery 计算 textarea 中文字数(剩余个数)的小程序攻略。 步骤1:编写 HTML 代码 首先,我们需要在 HTML 中创建一个 textarea 元素,用于输入文字。并且添加一个 span 元素,用于显示已经输入的文字数和还剩余的文字数。示例代码如下: <textarea id="content" ro…

    python 2023年5月23日
    00
  • Python 打印不带括号的元组的实现

    以下是“Python 打印不带括号的元组的实现”完整攻略: 问题描述 在Python中,元组是由逗号隔开的一组值,通常使用圆括号表示。但有时候我们需要以不带圆括号的形式来打印元组。那么,如何实现这样的需求呢? 实现方式 方法一:使用“*”运算符 示例代码如下: tuple1 = (1, 2, 3, 4) print(*tuple1) 运行结果如下: 1 2 …

    python 2023年5月14日
    00
  • 利用Python改正excel表格数据

    利用Python修改Excel表格数据是一项非常常见的任务。下面就是一份基于Python的Excel数据修改教程。 步骤一:安装必要的Python包 我们首先需要安装必要的Python包,这些包在修改和处理Excel表格数据时需要用到。这里我们需要安装openpyxl和pandas两个包,可以使用pip来进行安装。在命令行中输入以下命令: pip insta…

    python 2023年5月13日
    00
  • 利用python爬取有道词典的方法

    下面是利用Python爬取有道词典的完整攻略: 1. 安装必要的库 首先,我们需要安装两个必要的Python库:requests和Beautiful Soup 4。打开终端或命令行界面,输入以下命令: pip install requests pip install beautifulsoup4 2. 网页分析 在正式编写爬虫之前,我们需要先分析一下有道词典…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部