大家好!我是哒哒咚咚!欢迎来到第七天,也是我们七天入门系列的最后一天!
回顾一下这六天,我们一步步给程序装上了“大脑”(条件判断)、学会了“重复劳动”(循环)、配备了“超级收纳盒”(列表和字典)、还学会了把代码打包成“乐高积木”(函数)。今天,我们要让程序真正走出“小黑屋”,去接触外面的世界——读写文件和借用别人的工具箱(模块)。
学会了这些,你的程序就能保存数据、使用强大的现成工具,变得真正实用了!
今日学习目标:
理解什么是模块,以及如何导入和使用模块
掌握几个常用内置模块(math、random、datetime)
学会用Python读写文本文件(.txt)
理解异常处理,让程序更健壮(try...except)
动手写一个能保存最高分的猜数字游戏,一个简易日记本
让我们开始吧!
1. 模块:站在巨人的肩膀上
编程的一大乐趣就是不用重复造轮子。Python自带了很多“工具箱”,里面装满了别人写好的、可以直接用的函数,这些工具箱就叫模块(Module)。你只需要说一声“借我用用”,就能享受现成的功能。
1.1 导入模块的三种方式
方式一:import 模块名
导入整个模块,使用时需要加上模块名做前缀。
python
import mathprint(math.sqrt(16))# 输出:4.0 (平方根)print(math.pi)# 输出:3.141592653589793
方式二:from 模块名 import 函数名
只导入模块里的某个函数,使用时直接写函数名。
python
from math import sqrt, piprint(sqrt(16))# 输出:4.0print(pi)# 输出:3.141592653589793
方式三:import 模块名 as 别名
给模块起个短点的名字,打字更省力。
python
import math as mprint(m.sqrt(16))# 输出:4.0
1.2 常用内置模块举例
math:数学函数库,比如 sqrt(平方根)、ceil(向上取整)、floor(向下取整)、三角函数等。
random:随机数生成器,比如 random.randint(1,10)(1到10随机整数)、random.choice(['苹果','香蕉'])(随机选一个)。
datetime:处理日期和时间,比如获取当前时间、计算日期差。
小例子:随机抽奖程序
python
import randomstudents =["小明","小红","小刚","小华","小丽"]winner = random.choice(students)print(f"今天的幸运儿是:{winner}!")2. 文件操作:让程序拥有记忆力
目前我们写的程序,一关掉运行窗口,所有数据就消失了(比如猜数字的历史最高分)。能不能让程序记住这些信息?当然能!文件操作就是程序的“记忆卡”。
Python读写文件非常方便,主要用 open() 函数。
2.1 打开文件
python
file=open("文件名","模式")模式主要有:
重要:打开文件后一定要记得关闭!用 file.close()。
2.2 读取文件
python
# 方法1:read() 读取全部内容为一个字符串file=open("poem.txt","r")content =file.read()print(content)file.close()# 方法2:readlines() 读取全部行,返回一个列表file=open("poem.txt","r")lines =file.readlines()for line in lines:print(line.strip())# strip() 去掉末尾的换行符file.close()2.3 写入文件
python
file=open("notes.txt","w")# 覆盖写入file.write("今天学了文件操作!\n")file.write("真有趣!")file.close()file=open("notes.txt","a")# 追加写入file.write("\n这是追加的一行。")file.close()2.4 最省心的写法:with 语句
每次都写 close() 很麻烦,而且万一程序出错,文件可能没关闭。Python提供了 with 语句,它会自动帮我们关闭文件。
python
withopen("poem.txt","r")asfile: content =file.read()print(content)# 缩进结束后,文件自动关闭3. 异常处理:给程序穿上防弹衣
程序运行时难免会遇到意外情况:比如用户输入了非数字、要读取的文件不存在、网络突然断了……如果不处理,程序就会崩溃报错,用户体验很差。
异常处理就是给程序穿上防弹衣,遇到意外时能优雅地处理,而不是直接倒下。
基本语法:try...except...finally
python
try:# 尝试执行的代码(可能会出错) num =int(input("请输入一个数字:"))print(10/ num)except ValueError:# 如果发生 ValueError(比如输入了字母)print("输入的不是有效数字!")except ZeroDivisionError:# 如果发生 ZeroDivisionError(除数为0)print("不能除以0!")else:# 如果没有发生任何异常,执行这里(可选)print("计算成功!")finally:# 不管有没有异常,都会执行这里(可选)print("程序执行完毕。")实战:安全地读取文件
python
filename =input("请输入要读取的文件名:")try:withopen(filename,"r")as f:print(f.read())except FileNotFoundError:print(f"文件 {filename} 不存在,请检查文件名。")4. 小练习:让程序真正实用起来
保存最高分的猜数字游戏:
简易日记本:
随机密码生成器:
计算器日志版(挑战版):
实现一个简单的交互式计算器,让用户输入两个数和运算符(+、-、*、/),输出结果。
将每次的计算(例如 3 + 5 = 8)以追加模式写入一个日志文件 calculator_log.txt。
增加一个功能:如果用户输入“历史”,则读取并显示所有计算记录。
5. 七天总结与下一步
恭喜你!你已经坚持完成了七天的Python基础入门学习!🎉
这七天我们走过了一条充满乐趣的编程之路:
第一天:认识了Python,装好了环境,学会了用 print 打招呼。
第二天:掌握了变量和数据类型,能存储各种信息。
第三天:学会了条件判断,让程序有了“大脑”。
第四天:解锁了循环,让程序能“重复劳动”。
第五天:用列表和字典管理数据,拥有了“超级收纳盒”。
第六天:用函数打包代码,造出了自己的“乐高积木”。
第七天:学会了模块和文件操作,让程序能“借用工具”并“记住事情”。
现在,你已经具备了编写简单但完整程序的能力!你可以写一个小游戏、一个记账本、一个文件整理工具……编程的世界已经向你敞开大门。
下一步往哪走?
多做练习:找一些简单的项目练手,比如猜拳游戏、学生成绩管理系统、爬取网页标题的小脚本。
学习面向对象:这是Python里很重要的编程思想,能帮你写出更复杂的程序。
探索第三方库:用 pip install 安装外部库,比如用 requests 爬网页、用 pygame 做游戏、用 pandas 处理数据。
加入社区:多去GitHub、Stack Overflow、Python中文社区看看,向高手学习。
遇到问题别害怕,程序员都是在不断试错中成长的。记住:编程不是背代码,而是用逻辑解决问题。
这七天感谢你的陪伴!我是哒哒咚咚,我们后会有期!🚀
再见,未来的Python大牛! 🐍