Python字典详解:特性、创建方式与应用场景全解析
[id_11424713[id_9975210[id_1453432585]]9]id_1338777883]

在 Python 里,字典属于一种内置的数据结构。它可用来存储键值对。字典是一个无序的集合,其中每个键都是独一无二的,并且都与一个值相联系。字典能提供快速的查找、插入以及删除操作,所以在很多应用场景里都很有作用。字典的基本特性如下:
[id_1505410356]
几种常用的创建方式 1.使用花括号 {} 直接创建
# 创建一个空字典
my_dict = {}
# 创建一个带有初始键值对的字典
my_dict = {
'name': 'Alice',
'age': 25,
'city': 'New York'
}
2.使用dict()构造函数
# 使用空的 dict() 构造函数创建空字典
empty_dict = dict([id_409901829]
[id_10353262]
person = dict(name='Alice', age=25, city='New York')
使用键列表与值列表能够创建字典,可利用 zip() 函数把键列表和值列表组合在一起
keys = ['key1', 'key2']
values = ['value1', 'value2']
my_dict = dict(zip(keys, values))
4.使用字典推导式
# 使用字典推导式创建字典
squares = {x: x*x for x in range(6)}
print(squares) 输出的内容为:0 对应的是 0,1 对应的是 1,2 对应的是 4,3 对应的是 9,4 对应的是 16,5 对应的是 25。
访问值 1.通过键值访问
my_dict = {
'name': 'Alice',
'age': 25,
'city': 'New York'
}
# 通过键访问值
name = my_dict['name']
print(name) # 输出: Alice
使用 get 方法来访问值,当键不存在时,不会产生报错情况,而是会返回 None 或者指定的默认值。
尝试获取键为 'country' 所对应的值,如果该键对应的值不存在,那么就返回 'USA'
country = my_dict.get('country', 'USA')
print(country) # 输出: USA
# 添加 'country' 键到字典中
my_dict['country'] = 'Canada'
尝试再次获取“country”键所对应的的值。
country = my_dict.get('country')
print(country) # 输出: Canada
修改值 1.修改已有键的值
# 修改已有键的值
my_dict['age'] = 26
2.添加新的键值对
# 添加新的键值对
my_dict['country'] = 'USA'
删除键值对 1.使用del关键字删除键值对
# 使用 del 关键字删除键值对
del my_dict['city']
2.使用pop方法删除键值对并返回该值
# 使用 pop 方法删除键值对并返回该值
age = my_dict.pop('age')
print(age) # 输出: 26
遍历字典 1.遍历键
# 遍历字典的键
for key in my_dict:
print(key)
2.遍历值
# 遍历字典的值
for value in my_dict.values():
print(value)
3.遍历键值对
# 遍历字典的键值对
for key, value in my_dict.items():
print(fKey 为 {key},Value 为 {value})
常用方法 1.清空字典
# 清空字典
my_dict.clear()
2.获取字典的键列表
# 获取字典的键列表
keys = my_dict.keys()
3.获取字典的值列表
# 获取字典的值列表
values = my_dict.values()
4.获取字典的键值对列表
# 获取字典的键值对列表
items = my_dict.items()
使用字典统计单词出现频率
def count_words(text):
word_count = {}
words = text.split()
for word in words:
word = word.lower() # 将单词转换为小写,以确保计数不区分大小写
if word in word_count:
word_count[word] += 1
else:
word_count[word] = 1
return word_count
text =
print(count_words(text))
- 有一个“only”。
字典的定义和结构:字典是一种用于存储键值对的数据结构,其中每个键都是唯一的,并且与一个值相关联。它类似于现实生活中的字典,通过键来快速查找对应的值。
字典是由键值对组成的集合,且这些键值对是无序的。每个键都是独一无二的,键与值之间通过冒号进行分隔。例如:存在这样一个字典,其中包含键“name”和值“Alice”,以及键“age”和值 25,即 {'name': 'Alice', 'age': 25}
2.类型:
字典属于 Python 内置的数据结构。可以利用花括号 {} 来创建它,也可以通过 dict() 函数来创建它。
3.操作和方法:
常用操作包括添加、修改、删除键值对,访问值等。
常用的方法包含 keys(),还有 values(),以及 items(),有 get(),也有 pop()等。
4.用途:
字典的用途通常是存储相关数据。它适合那些需要能够快速进行查找以及更新数据的场景。
数据框(DataFrame) 1.定义和结构:
数据框是 Pandas 库所具有的一种数据结构,它与电子表格相似。它是一个二维的、大小能够改变的、带有标签的数据结构,和数据库中的表格以及 Excel 表格类似。例如:
name age city
0 Alice 25 New York
1 Bob 30 Chicago
2.类型:
数据框是在 Pandas 库中的一种对象。要使用数据框,就必须先导入 Pandas 库,具体的导入方式为:import pandas as pd 。
可以通过 pd.DataFrame() 创建。
3.操作和方法:
提供了多种方法和函数用于处理数据,其中包括数据筛选这一方法,还有数据合并、分组、聚合以及统计分析等函数。
常用的方法包含 head(),还有 describe(),以及 merge(),另外有 groupby(),同时还有 pivot_table()等。
4.用途:
数据框可用来处理和分析结构化数据。它特别适用于那些需要进行复杂数据操作和分析的场景。
使用字典数组生成df
import pandas as pd
# 字典数组
data = [
{'name': 'Alice', 'age': 25, 'city': 'New York'},
{'name': 'Bob', 'age': 30, 'city': 'Chicago'},
{'name': 'Charlie', 'age': 35, 'city': 'San Francisco'},
{'name': 'David', 'age': 40, 'city': 'Los Angeles'},
{'name': 'Eve', 'age': 45, 'city': 'New York'}
]
# 创建数据框
df = pd.DataFrame(data)
# 显示数据框
print("原始数据框:")
print(df)
# 筛选年龄大于30的人
filtered_df = df[df['age'] > 30]
print("\n年龄大于30的人:")
print(filtered_df)
# 按城市分组并计算每个城市的平均年龄
grouped_df = df.groupby('city')['age'].mean().reset_index()
print("\n按城市分组并计算平均年龄:")
print(grouped_df)
# 添加新列,表示是否年龄大于30
df['age_gt_30'] = df['age'] > 30
print("\n添加新列,表示是否年龄大于30:")
print(df)
相关文章
- Python继承的特点与优点:代码复用、减少代码量及初始化父类方法详解
- 少儿编程软件推荐:Scratch等适合孩子的编程工具选择指南
- 2018 STEAM教育产业峰会盛大举行,火花思维、编程猫等教育大咖共话未来
- 5款最适合小孩学习编程的软件推荐:Scratch、Alice等助力逻辑思维培养
- Python类中@property、@classmethod和静态方法的区别与使用场景详解
- PHPcms V9模块安装详细教程:从下载到配置的完整指南
- 关于phpimagecreatefrompng的信息
- linux安装php,linux安装php环境
- php线上培训是什么,在线php课程培训
- php如何制作网站,php怎么做网站
猜你喜欢
-
Python正则表达式常用函数详解:match()、search()、findall()和finditer()的区别与用法
今天学习了 Python 里有关正则表达式这方面的知识。对于正则表达式的语法,不做过多的解释,因为在网上有很多可供学习的资料。这里主要是对 Python 中常用的正...
-
JSON数据格式优势解析:轻量高效的前后端数据传输格式详解
在开发进程中,时常需要与其他系统进行数据交换。数据交换的格式包含 XML、JSON 等。JSON 作为一种轻量级的数据格式,其效率比 XML 要高。XML 需要大量...
-
Python类中定义列表问题解析:实例化对象与可变属性的关系探讨
最近学习python,在类中定义列表时发现有几个问题 class List(object): list=[] list1=List() list1 的 li...
-
Python教程:编写查找大文件的文件清理工具,轻松管理磁盘空间
[id_[id_1816442367]283327416] 以下是一个详细的 Python 教程,它会教你怎样去编写一个能够查找大文件的文件清理工具。这个教程将会被...
-
Python替代R作图:使用pandas、matplotlib和seaborn进行高效数据可视化
[id_8775086] [id_[id_204358991]95894101] 大多数生物信息工作者会使用 R 来进行作图。R 语言具备丰富的 package ,...

请小编喝杯咖啡吧!