Python编程入门:字典、集合与文件操作详解76
大家好,欢迎来到Python编程入门系列教程的第132篇!今天我们将深入探讨Python中三个非常重要的数据结构:字典、集合和文件操作。掌握这些内容,将极大地提升你的编程能力,让你能够处理更复杂的问题和更大的数据集。
一、字典 (Dictionary)
字典是Python中一种非常灵活且强大的数据结构,它以键值对 (key-value pair) 的形式存储数据。键必须是不可变的类型,例如字符串、数字或元组,而值可以是任何Python对象。字典使用花括号 `{}` 定义,键值对之间用冒号 `:` 分隔,键值对之间用逗号 `,` 分隔。
例如,一个存储学生信息的字典可以这样定义:
student = {
"name": "Alice",
"age": 20,
"score": 85,
"courses": ["Math", "Physics", "Chemistry"]
}
我们可以通过键访问字典中的值:
print(student["name"]) # 输出:Alice
print(student["score"]) # 输出:85
如果尝试访问不存在的键,会抛出 `KeyError` 异常。为了避免这种情况,可以使用 `get()` 方法,它可以指定一个默认值:
print(("grade", "N/A")) # 输出:N/A
我们可以添加、修改和删除字典中的键值对:
student["grade"] = "A" # 添加键值对
student["age"] = 21 # 修改键值对
del student["courses"] # 删除键值对
字典还有一些常用的方法,例如 `keys()`、`values()`、`items()`,分别返回字典的键、值和键值对的迭代器。
print(()) # 输出:dict_keys(['name', 'age', 'score', 'grade'])
print(()) # 输出:dict_values(['Alice', 21, 85, 'A'])
print(()) # 输出:dict_items([('name', 'Alice'), ('age', 21), ('score', 85), ('grade', 'A')])
二、集合 (Set)
集合是一个无序的不重复元素的序列。它可以使用花括号 `{}` 或 `set()` 函数创建。集合的主要用途是进行成员测试和消除重复元素。
例如,创建一个集合:
my_set = {1, 2, 3, 3, 4, 5} # 重复的元素会被自动去除
print(my_set) # 输出:{1, 2, 3, 4, 5}
集合支持常见的集合操作,例如:
add(x): 添加元素 x 到集合中。
remove(x): 删除元素 x,如果 x 不存在则抛出 KeyError。
discard(x): 删除元素 x,如果 x 不存在则不会抛出异常。
union(other) 或 |: 返回两个集合的并集。
intersection(other) 或 &: 返回两个集合的交集。
difference(other) 或 -: 返回集合与另一个集合的差集。
symmetric_difference(other) 或 ^: 返回两个集合的对称差集。
三、文件操作
文件操作是程序与外部存储交互的关键。Python 提供了简单易用的文件操作函数。
打开文件使用 `open()` 函数,它需要两个参数:文件名和模式。常用的模式包括:
`"r"`: 读取模式 (默认)
`"w"`: 写入模式 (如果文件存在则覆盖)
`"a"`: 追加模式 (在文件末尾追加)
`"x"`: 创建写入模式 (如果文件已存在则抛出异常)
`"b"`: 二进制模式
`"t"`: 文本模式 (默认)
例如,读取文件:
with open("", "r") as f:
content = ()
print(content)
写入文件:
with open("", "w") as f:
("Hello, world!")
`with open(...) as f:` 语句确保文件在使用完毕后自动关闭,即使发生异常也能保证文件被正确关闭,避免资源泄露。
还可以使用 `readline()` 逐行读取文件,`readlines()` 读取所有行到一个列表中,以及 `writelines()` 一次写入多行。
本节内容涵盖了字典、集合和文件操作的基础知识。熟练掌握这些内容,将使你的Python编程能力更上一层楼。 在接下来的教程中,我们将继续学习更多高级的Python技巧和知识。请继续关注!
2025-03-31
高效职场人必备:脚本语言自动化办公,告别重复劳动!
https://jb123.cn/jiaobenyuyan/73081.html
专升本逆袭之路:JavaScript助你转型互联网,高薪就业不是梦!——从前端基础到全栈进阶,学习路线与实战策略全解析
https://jb123.cn/javascript/73080.html
揭秘Web幕后:服务器与客户端脚本语言的协同魔法
https://jb123.cn/jiaobenyuyan/73079.html
Flash ActionScript 变革:从AS2到AS3的蜕变之路与核心要点
https://jb123.cn/jiaobenyuyan/73078.html
PHP运行环境深度解析:你的PHP代码究竟在服务器的哪个环节被执行?
https://jb123.cn/jiaobenyuyan/73077.html
热门文章
Python 编程解密:从谜团到清晰
https://jb123.cn/python/24279.html
Python编程深圳:初学者入门指南
https://jb123.cn/python/24225.html
Python 编程终端:让开发者畅所欲为的指令中心
https://jb123.cn/python/22225.html
Python 编程专业指南:踏上编程之路的全面指南
https://jb123.cn/python/20671.html
Python 面向对象编程学习宝典,PDF 免费下载
https://jb123.cn/python/3929.html