学校云 建设你的专属在线教育平台
中国大学MOOC
SPOC学校专有课程
Python程序设计
分享
spContent=本课程是首批国家级一流线下课程“Python程序设计基础”的配套MOOC,课程的特点是将知识融入具有实际意义的应用案例进行讲解,实用性强。秉承“学以致用”的理念,深入浅出,无论你是文科、理工科、经济、管理,无论有无编程经验,都能通过学习本课程掌握应用Python程序设计方法解决行业应用问题的能力。 “代码千行过,bug不沾身”,每讲后面配套自动评测的编程训练作业和实验项目,学习后马上实践,学练结合,助你打下扎实的编程基础。课程配套有实例教程视频,帮助理解编程思想,掌握排除错误的方法。课程聚焦于程序设计基础、数据应用和可视化,可为从事人工智能和大数据应用打下良好的基础。 支持自动评测的配套实践课程请访问:https://www.educoder.net/paths/g4i6rjal
—— 课程团队
课程概述

为什么为学习Python程序设计?

目前以物联网、大数据、机器人及人工智能等技术为驱动力的第四次工业革命正以前所未有的态势席卷全球,人们需要借助程序设计方法高效、自动的解决复杂问题,而python语言是目前应用最广泛、开发效率最高的程序设计语言,能够赋予我们高效解决问题的能力。

本课程主要结合应用讲解Python程序设计方法,分为程序设计基础和应用二部分,共9个教学单元,教学安排如下:

第一部分为基础篇,共7个单元:

Python语言基础讲授基本概念和输入输出,然后用大家最熟悉的数值类型讲授程序设计的流程控制,再学习利用函数实现模块化程序设计和利用分而治之方法求解复杂问题,此时学习者应该基本上具备一般问题的程序求解能力了。接着学习Python中的文本序列和序列类型、集合和映射类型等数据类型,以便用更简洁和高效的方法完成问题的求解。

第二部分为应用篇,共2个单元:

文件操作,讲解文本、CSV、JSON等文件的读写、批量处理文件中的数据的方法和应用NumPy、Pandas快速读写不同格式文件中数据和转换数据格式的方法。数据可视化,讲授Matplotlib库的基本用法、根据函数绘制曲线、读各种类型文件中的数据绘制曲线和各种非线型图的绘制方法。

学了Python能有什么用?

《论语》中说:“志于道,据于德,依于仁,游于艺”。在孔子看来,人的一生只需要有四件事就够了。“志于道” 是孔子一生的最高理想,是希望我们人生一定要先确定目标,但又不要局限于某一种技能,而去学习可解决各类问题的通用的方法。 “游于艺”可以回归到“至于道”,因为知识与艺术的目的,正在于探寻宇宙、人生的真相。在现代社会,“天道”大约可以相应于哲学和自然科学,“人道”大约相应于各种人文学科。而Python程序设计可以应用于理工、经管、文法、医学等各个领域,我们学习的目的不是Python语法,而应该是可以解决各个学科问题的数学、逻辑等通用方法。达到学以致用、用以促学、学用相长、知行合一的终极目标。学习本课程后,我们将掌握应用枚举、递归、贪心、迭代、排序、分治、Monte Carlo模拟、二分法和字符串匹配等算法解决各领域的各种复杂问题,掌握CSV、JSON、Excel等各种文件及SQLite数据库中数据的读写和格式转换、掌握利用NumPy和Pandas进行文件读写和简单的数据统计分析,掌握利用Matplotlib进行各种线型和非线型图的绘制方法和利用WordCloud库进行词云绘制的方法。基本上可以胜利科学计算、数据处理和可视化等工作,具备从事数据处理和人工智能等领域的工作的基础能力。

课程特色

本课程采用斯坦福大学提出的“先能力、后知识”的轴反转教学方法 ,秉承有使命的学习的理念,从实用出发,将知识融入实际问题的求解中,带着问题和使命去学习,使学生不仅要学会Python程序设计的方法,更要掌握应用程序设计通用方法和算法解决各类复杂专业问题的能力。

学习建议,按10周完成学习规划,对于校内同步开课的同学来说,每周观看视频30分钟,编程30分钟,超时完不成的问题留到线下课程学习后再完成,每周在MOOC上学习时间不超过1小时。对于完全自学的同学,30分钟完不成的题目,需要回看视频或看实例讲解的视频再来完成,预计每周学习2小时左右。


授课目标

1. 掌握Python语言中的基础概念、程序设计语法、数据类型等知识。

2. 培养程序设计能力,掌握通过对实际问题进行抽象、分解和建模,将其转为计算机可求解问题的能力。掌握选择合适的算法,利用Python语言解决复杂数学问题和科学计算问题的能力。掌握利用Python进行数据处理、数据分析和可视化能力。

3.培养计算思维和信息素养,掌握利用计算机思想、理论、方法和技术解决实际问题的方法。


成绩 要求

前7讲中每讲作业占10分,作业共占70分;

第8讲测验占5分; 

第9讲互评占5分; 

视频观看时长占5分;

一次测试占15%,共15分。

采取百分制,60-85分合格,85分以上优秀。



课程大纲
预备知识

眼过千遍不如手过一遍!
书看千行不如手敲一行!

这是一门实践性很强的课程,需要写大量代码,所以请预备好一台计算机!

然后请掌握并掌握以下33个单词:

————————

1. None 空

2. True 真

3. False 假

4. pass 空语句

————————

5. if 如果

6. elif 否则-如果

7. else 否则

8. and,or 且,或

9. not 非

10. in 在……中

11. is 是

12. as 作为

————————

13. while 循环

14. for 循环(另一种)

15. break 结束循环

16. continue 继续下一次循环

17. except 异常

————————

18. class 类

19. def 定义函数

20. return 返回

21. global 全局的

22. lambda 匿名函数

————————

23. raise 抛出异常

24. try 尝试

25. finally 最终

26. with 用……

27. yield 迭代返回

————————

28. from 从……

29. import 导入包

30. del 删除对象

31. print 打印,输出

32. input 输入

33. sum 求和



参考资料

1. pycharm 开发工具,https://www.jetbrains.com/pycharm/

2. Python官方教程(The Python Tutorial),https://docs.python.org/3/tutorial/index.html

3. 内置类型(Built-in Types),https://docs.python.org/3/library/stdtypes.html?highlight=build%20type#text-sequence-type-str

4. Python 标准库(The Python Standard Library),https://docs.python.org/zh-cn/3/library/index.html

5. 内置函数(Built-in Functions),https://docs.python.org/3/library/functions.html?highlight=build%20function

6. numpy文档,https://numpy.org/

7. pandas 文档,https://pandas.pydata.org/docs/index.html

8. matplotlib 文档,https://matplotlib.org/

9. pyecharts文档,https://pyecharts.org/#/zh-cn/intro

10. seaborn数据可视化,https://seaborn.pydata.org/

11. wheel格式包下载,https://www.lfd.uci.edu/~gohlke/pythonlibs/

12. Kaggle数据下载,https://www.kaggle.com/

13. 国家统计局数据下载,https://www.stats.gov.cn/

14. sympy教程,  https://docs.sympy.org/latest/tutorial/index.html

15. 可视化演示,https://pythontutor.com/

16. 力扣训练平台,https://leetcode-cn.com/

17. hackerrank训练平台,https://www.hackerrank.com/dashboard

18.  Tushare大数据开放社区(金融数据下载),https://tushare.pro/

19. 案例解析教程 https://www.yuque.com/zhaoguanghui-jxq8m/vgbvep



常见问题

本课程主讲教材:

《Python程序设计基础》(高等教育出版社978-7-04-055910-1)

《Python程序设计基础实践教程》(高等教育出版社978-7-04-056081-7)

《Python语言及其应用》(中国铁道出版社)