Python课程🐍
本Python课程是为本科三年级大学生开设的。本课程为零基础课程,学习本课程不需要具备Python编程知识和基础,但是需要具备一定计算机基础的知识。
课程特色
本课程在Python的教学实践过程中,大量结合下面这些软件工程实践中实际使用的工具,旨在提高学生的工程实践能力。
- ⛓️git: 课程理论教学和实践教学都与git版本控制软件深度结合,所有的课程讲义、实验指导、源代码、实验报告、项目报告都使用git来管理和同步。
- 📝markdown: 使用markdown格式来编写课程的讲义、实验指导、实验报告、项目报告等文档。帮助学生提高和规范文档的编写。
- 🧰vscode: vscode作为目前最流行的代码编辑软件,集成了包括git版本控制、markdown、软件测试、代码调试、Jupyter Notebook等等非常强大的功能。掌握和熟悉vscode的使用对于学习编程的学生来说是非常重要的技能。
- 📚课程项目:
- 🎮外星人入侵:使用Pygame库开发的一个小游戏,帮助学生掌握Python的基本语法和面向对象编程的基本概念。
- 📊数据可视化:使用Matplotlib库和Plotly库开发的数据可视化项目,帮助学生掌握数据可视化的基本概念和技能。
- 🌐Django Web应用程序:使用Django Web框架开发的Web应用程序,帮助学生掌握Web应用程序的开发和部署。
- ✍️MNIST手写数字识别:利用MNIST手写数字识别的项目,介绍深度学习的基本概念和原理。
课程目标
- 掌握Python编程语言的基本语法和特性。
- 掌握面向对象编程(Object-Oriented Programming, OOP)的概念和实践,掌握函数式编程的概念和实践。
- 学习使用Python进行程序设计和开发,包括算法和数据结构的应用。
- 了解Python在不同领域的应用,如科学计算、数据分析、人工智能、Web应用开发等。
- 培养良好的编程习惯和规范,包括代码可读性、模块化设计和文档编写。
- 学会使用常见的Python开发工具、集成开发环境(IDE)和版本控制系统(如Git)。
- 开发实际项目和练习实践,以实践中不断提升编程技能和思维能力。
- 培养自主学习和持续学习的能力,包括阅读官方文档、参与开源社区和探索新的Python库和工具。
课程目标旨在帮助学生全面了解和掌握Python编程语言,培养他们在软件开发和计算机科学领域的技能,为未来的学习和职业发展打下坚实基础。
参考书籍
本课程主要使用的教材和参考书籍以及书籍源代码如下:
课程内容
本课程在讲授过程中将完整地使用教材1讲授Python的基本语法以及三个实践项目的重要部分,在讲授Python一些高级语法和语言特性时,会使用参考书籍2的部分章节,在讲授数据分析相关知识例如Numpy和Pandas时会使用参考书籍3的相关章节。
课程主要教学内容如下:
- Python课程简介
- 变量和简单数据类型
- 列表, 列表操作
- if语句,字典, 用户输入和while循环
- Python数据结构
- 函数
- 函数高级
- Python面向对象编程
- 文件和异常
- 单元测试
- 项目一:外星人入侵
- 项目二:数据可视化
- 项目三:Web应用程序
- Numpy和Pandas的介绍
- AI
课程内容的安排可以根据学生学习的实际情况和教学目标进行灵活调整。
课程实验
本课程共包括7次实验:
- 实验一 Git和Markdown基础
- 实验二 Python变量、简单数据类型
- 实验三 Python列表
- 实验四 Python字典和while循环
- 实验五 Python数据结构与数据模型
- 实验六 函数
- 实验七 Python面向对象编程
实验内容包括教材《Python从入门到实践》的课后练习,另外还包括了Codewars网站上的Kata挑战,kata挑战包括从8kyu(最容易)到1kyu(最难)的8个难度等级,同学们可以自由选择合适自己的难度等级的任务来完成实验。
课程项目
本课程的教材《Python从入门到实践》包括了3个项目:
- 外星人入侵
- 数据可视化
- Web应用程序
同学们也可以自由选择其他项目来完成课程项目,例如:
- 其他Web应用程序项目
- 其他游戏项目
- Python爬虫项目
- Python数据分析项目
- Python人工智能项目
如果你不知道应该如何选择合适的项目以及项目指导,可以参考这个Github Repo:project-based-learning