第一周:Python 基础语法学习(第 1 - 7 天)
第 1 - 2 天
- 安装 Python 最新版本,熟悉不同操作系统(Windows、Linux、Mac)下的安装流程及注意事项。
- 安装 PyCharm 或 VS Code 等主流开发工具,了解其基本使用方法,配置 Python 解释器。
- 学习 Python 的基本数据类型,如整数、浮点数、字符串、布尔值、列表、元组、字典等。
- 掌握变量的定义、赋值和命名规则,进行简单的数据运算和字符串操作。
- 练习题目:创建一个包含不同数据类型元素的列表,如整数、字符串、浮点数,然后将列表中的字符串元素全部转换为大写,并输出转换后的列表。
第 3 - 4 天
- 学习条件语句(if - elif - else),理解如何根据不同条件执行不同代码块。
- 掌握循环语句(for 循环、while 循环),包括循环的基本语法、循环控制(break、continue)。
- 进行一些简单的流程控制案例练习,如判断一个数是否为偶数、计算 1 到 100 的和等。
- 练习题目:编写一个程序,输入一个整数 n,使用循环计算 1 到 n 之间所有能被 3 整除但不能被 5 整除的数的和。
第 5 - 6 天
- 学习函数的定义、参数传递、返回值等知识,了解函数的作用和优势。
- 掌握模块的概念,学会导入和使用 Python 标准库模块(如 math、random 等),以及自定义模块。
- 编写一些函数和模块相关的代码,如定义一个计算阶乘的函数,将其封装在模块中并在其他脚本中调用。
- 练习题目:定义一个函数,该函数接受一个列表作为参数,返回列表中的最大值和最小值。然后将这个函数封装在一个自定义模块中,在另一个 Python 脚本中导入并使用这个函数。
第 7 天
- 对本周所学的 Python 基础语法知识进行全面回顾,梳理重点和难点。
- 完成一些综合性的基础练习题,如实现一个简单的猜数字游戏,涵盖数据类型、流程控制、函数等知识点。
- 总结本周学习过程中遇到的问题及解决方法,为下周学习做好准备。
- 练习题目:实现一个简单的购物车程序。用户可以添加商品到购物车,商品信息包括名称和价格。用户可以查看购物车中的商品列表及其总价,也可以从购物车中删除商品。使用之前学过的各种基础语法知识来完成这个程序。
第二周:Python 高级特性学习(第 8 - 14 天)
第 8 - 9 天
- 学习面向对象编程的基本概念,如类、对象、属性、方法等。
- 掌握类的定义和实例化,学习如何定义类的属性和方法,以及方法的调用。
- 理解面向对象编程的三大特性:封装、继承、多态,通过简单案例进行实践,如定义一个动物类,再定义其子类狗类和猫类,体现继承和多态特性。
- 练习题目:定义一个图形类 Shape,包含一个计算面积的抽象方法。然后定义两个子类 Circle(圆)和 Rectangle(矩形),继承自 Shape 类,分别实现计算面积的方法。创建 Circle 和 Rectangle 的实例,并调用它们的面积计算方法。
第 10 - 11 天
- 学习 Python 的异常处理机制,包括 try - except - finally 语句的使用,了解常见的异常类型(如 ZeroDivisionError、FileNotFoundError 等)。
- 掌握文件操作的基本方法,如打开文件(open 函数)、读取文件内容(read、readline、readlines 方法)、写入文件内容(write、writelines 方法),以及关闭文件(close 方法)。
- 编写代码实现文件的读写操作,并在过程中进行异常处理,如读取不存在的文件时捕获异常并提示用户。
- 练习题目:编写一个程序,尝试读取一个指定路径的文本文件内容并打印出来。如果文件不存在,捕获异常并创建一个新的同名文件,向其中写入一段默认文本,然后再读取并打印文件内容。
第 12 - 13 天
- 数据处理与分析基础(numpy 和 pandas 库):
- 安装 numpy 和 pandas 库,了解其在数据处理和分析领域的重要性。
- 学习 numpy 库的基本使用,包括创建数组(numpy.array)、数组的基本运算、索引和切片操作等。
- 学习 pandas 库的基本数据结构 Series 和 DataFrame,掌握数据的读取(如 read_csv 函数读取 CSV 文件)、清洗(数据筛选、缺失值处理等)和简单分析(如计算均值、统计频次等)方法。
- 通过实际的数据集(如简单的销售数据 CSV 文件)进行练习,运用 numpy 和 pandas 库进行数据处理和分析操作。
- 练习题目:使用 pandas 库读取一个包含学生成绩的 CSV 文件,文件包含学生姓名、数学成绩、语文成绩等列。计算每个学生的总成绩,并按总成绩从高到低对学生进行排序,最后输出排序后的学生信息。
第 14 天
- 回顾本周所学的 Python 高级特性知识,整理面向对象编程、异常处理、文件操作以及数据处理库的重点内容。
- 完成一些综合性练习题,如实现一个文件管理类,包含文件的读取、写入、异常处理等功能,并使用 numpy 和 pandas 库对文件中的数据进行分析。
- 整理本周学习过程中的代码示例和遇到的问题,形成自己的学习笔记。
- 练习题目:创建一个员工信息管理类 EmployeeManager。该类可以从一个 CSV 文件中读取员工信息(包括姓名、年龄、部门、工资等),存储在一个 DataFrame 中。实现方法来添加新员工信息、删除员工信息、查询特定部门的员工信息,并计算所有员工的平均工资。在操作过程中,对可能出现的文件读取错误、数据格式错误等进行异常处理。
第三周:Python 项目实战(第 15 - 21 天)
第 15 - 17 天
- 安装 Flask Web 框架,了解其基本原理和使用场景。
- 学习 Flask 框架的基础用法,如创建 Flask 应用实例、定义路由(@app.route 装饰器)、处理请求和响应等。
- 开发一个简单的 Web 应用,如一个用户登录注册系统,包含前端页面(使用 HTML、CSS 和 JavaScript 进行简单布局和交互)和后端逻辑(使用 Flask 框架处理用户请求、验证用户信息、存储用户数据等)。
- 学习如何使用数据库(如 SQLite)与 Flask 应用集成,进行用户数据的持久化存储。
- 练习题目:基于 Flask 框架开发一个简单的博客系统。用户可以发布博客文章,文章包含标题、内容和发布时间。用户可以在前端页面查看所有博客文章列表,点击文章标题可以查看文章详情。实现用户注册和登录功能,只有登录用户才能发布文章。使用 SQLite 数据库存储用户信息和博客文章信息。
第 18 - 20 天
- 确定一个数据分析项目主题,如分析某电商平台的销售数据,找出销售趋势、热门商品等信息。
- 收集和整理相关数据集,可以从公开数据平台获取或自行模拟生成数据。
- 使用之前学习的 numpy、pandas 库对数据进行清洗和预处理,如去除重复数据、处理缺失值、转换数据类型等。
- 运用 matplotlib 和 seaborn 等数据可视化库对数据进行可视化分析,绘制柱状图、折线图、饼图等,直观展示数据特征和分析结果。
- 撰写数据分析报告,对项目过程、数据分析方法和结果进行总结和阐述。
- 练习题目:从某公开数据平台获取某城市一年的空气质量数据(包含日期、空气质量指数 AQI、主要污染物等信息)。使用 pandas 库对数据进行清洗,去除缺失值和异常值。分析不同季节的空气质量变化情况,使用 matplotlib 绘制折线图展示每个月的平均 AQI。找出空气质量最差的 10 天,并分析这 10 天的主要污染物分布,使用 seaborn 绘制柱状图展示。最后撰写一份数据分析报告,总结分析结果和发现。
第 21 天
- 对本周完成的 Web 开发项目和数据分析项目进行全面总结,梳理项目开发过程中的技术要点和遇到的问题及解决方案。
- 准备项目展示材料,如项目演示视频、项目文档(包含项目介绍、技术实现细节、运行说明等)。
- 向他人展示自己的项目成果,接受反馈和建议,进一步完善项目。
- 练习题目:制作一个项目总结 PPT,包含 Web 开发项目和数据分析项目的项目背景、目标、技术实现方案、关键代码展示、最终成果展示以及项目总结与反思等内容。然后向虚拟的观众(可以是自己想象的同事或同学)进行一次 10 - 15 分钟的项目展示演讲,并录制下来。
第四周:大模型本地部署相关学习(第 22 - 30 天)
第 22 - 24 天
- 了解大模型(如 GPT、LLaMA 等)的基本原理和架构,包括神经网络结构、预训练过程、微调机制等。
- 学习大模型的应用场景和优势,以及在本地部署大模型的意义和挑战。
- 研究不同大模型的特点和适用范围,对比它们在性能、模型大小、开源情况等方面的差异。
- 练习题目:写一篇短文,对比 GPT 和 LLaMA 在模型架构、预训练数据来源、应用场景方面的异同点,要求不少于 500 字。
第 25 - 27 天
- 根据所选大模型的要求,搭建本地部署环境,包括安装必要的依赖库(如 PyTorch、TensorFlow 等深度学习框架)、配置硬件环境(如果需要 GPU 加速)。
- 学习如何从官方或开源渠道下载大模型权重文件,了解模型文件的结构和存储方式。
- 对下载的模型进行初步测试,确保模型能够在本地环境中正常加载和运行,如使用一些简单的文本输入测试模型的生成能力。
- 练习题目:选择一个开源大模型(如 LLaMA),按照官方文档说明在本地环境(假设为 Linux 系统)搭建部署环境,成功下载模型权重文件并运行模型,使用一段简单的文本输入(如 “介绍一下 Python 语言”),获取模型的输出结果,并将整个部署过程的步骤记录下来,包括遇到的问题及解决方法。
第 28 - 30 天
- 学习模型微调的方法和技术,根据自己的需求对大模型进行微调,如针对特定领域的文本生成任务(如医疗领域的问答系统)对模型进行微调。
- 开发一个基于本地部署大模型的应用程序,如一个简单的文本生成工具或智能问答系统,将模型集成到应用中,实现用户与模型的交互。
- 对开发的应用进行性能优化和测试,确保应用在本地环境中能够高效稳定运行,处理用户请求并给出合理的响应。
- 总结本月学习成果,整理学习过程中的所有代码、文档和资料,形成完整的学习成果集,为后续进一步深入学习和应用 Python 及大模型技术打下坚实基础。
- 练习题目:基于微调后的大模型开发一个智能法律咨询助手应用。用户输入法律相关问题,应用能够给出相应的解答。对应用进行性能测试,记录模型响应时间,通过优化代码(如缓存机制、模型参数调整等)将平均响应时间缩短 20%,并将优化前后的性能测试数据和优化过程记录下来。最后整理本月学习过程中的所有代码、笔记、报告等资料,制作一个学习成果文件夹,文件夹结构清晰,便于后续查阅。