Python 程序设计
从编程思维到 Python 入门,开启你的程序设计之旅
Agenda
第一部分
Reading
编程曾一度高深莫测,被认为是熟练程序员专属的领域,但如今其难度已经大大降低,人人都可以做到。编程的过程既有趣、能表达自我,还具有创造性,是锻炼大脑、培养创造性思维的好方法。
About Python
Python 是由荷兰人吉多·范罗苏姆(Guido von Rossum)发明的一种开源、免费的编程语言,是目前世界上最受欢迎和拥有最多用户的编程语言。
Python 强调代码的可读性和语法的简洁性,是一种面向对象的解释型语言。相较于 C、C++、Java 这些同样影响深远的编程语言,Python 让使用者能够用更少的代码实现同样的功能。
Advantages
与 C、C++、Java 语言相比,Python 语言在编写代码时不需要建立 main 函数,无论是书写还是掌握计算机算法都比较简单。而且,Python 语言编写的程序代码量明显少于其他语言,对于初学者来说,在学习语法上会减少很多挫败感。
当使用 Python 语言编写程序的时候,我们不需要考虑如何管理程序使用的内存之类的细节。并且,Python 有很丰富的库,其中既有官方开发的,也有第三方开发的。
Advantages
Python 语言可以应用到网站后端开发、网络爬虫、人工智能、自动化运维、数据分析、游戏开发等各个领域。
Disadvantages
相比编译型语言(如 C 语言),执行速度慢,作为解释型语言且有全局解释器锁,影响多核及 CPU 密集任务性能。
代码可读性与简洁性难平衡,动态类型和鸭子类型易致隐式错误。
内存占用高,对象管理与垃圾回收带来额外开销。
Definition
程序:
是为实现特定目标或解决特定问题而用计算机语言编写的一系列语句或指令。
一组计算机能识别和执行的命令。
Language
不同语言都有相应语法结构与规范等。例如我们学习英语,需要识记单词,语法结构等。
不同编程语言也有相应格式与规范,本课需要学习 Python 语言格式与规范。
Algorithm
尼古拉斯·沃斯(1984年图灵奖得主、Pascal之父)
算法:是解决问题的方法和步骤。
沃斯公式:程序 = 算法 + 数据结构
Metaphor
给计算机当 "指挥官",告诉它 "先做什么,再做什么"
给生活当 "偷懒神器",把重复的、复杂的任务交给计算机
给大脑当 "逻辑训练师",让你学会把想法变成清晰的步骤
Properties
算法是解决特定问题的方法,是程序设计的基础和灵魂。作为一个算法,应具备5个特性,即有穷性、确定性、可行性、输入和输出。
计算机算法可分为两大类,即数值计算算法和非数值计算算法。
数值计算算法的目的是求解数值,例如求方程的根
非数值计算算法主要用于处理事务领域的问题,如排序、查找等
5 Properties
第二部分
Brainstorm
Brainstorm
第三部分
Setup
目前,Python 有两个版本,一个是 2.x 版,一个是 3.x 版,这两个版本是不兼容的。由于 3.x 版越来越普及,我们的教程将以最新的 Python 3.x 版本为基础。
打开 Python 官方下载页面:
https://www.python.org/downloads/
中文网:
https://python.p2hp.com/
Configuration
安装成功后,打开命令行窗口(Windows 下打开 CMD),敲入 python 后,出现以下提示,为安装成功,否则,需要对 Python 进行配置。
退出 Python 交互式环境,需要在提示符 >>> 下输入 exit() 并回车。
Study Tips
之前的课程基本都属于应用类。概念性的东西以理解为主,重点在于敲代码实现。
三步走:它是啥?它能帮我解决什么问题?它如何去使用?
听懂不代表会写,会写不代表能灵活运用。
Study Tips
将脑子中的思维转换为编程语言。编程学习中第一大困难是:如何利用语法知识去解决实际问题。找数据,列步骤,一步步实现。
编程学习中第二大困难是:报错太多,会打击自信。解决途经:问 AI(详细询问),问同学问老师,回归课本和书籍。