2.1深入理解Phyton语言(重要)

2.1.1 发现phyton语言的魅力

image.png
1.计算机系统结构时代。1946年第一台计算机诞生。
2.1981第一台PC机诞生。
3.2008年第一台安卓机诞生。走向移动时代。
4.2016年,计算机打败柯洁(围棋高手)

image.png
虽然在2017年标志着人工智能的到来,但是我们离人工智能的应用还有很长的一段路。

2.1.2 在人工智能时代,计算机可以做什么事情呢?

在人工智能时代,机器会接管很多的数据处理问题,会接管很多的基础功能性问题。实际上到了这个时代,正是由于基础工作可以被计算机接管,我们更多关心的是人类自身的问题。用计算机帮助人类,解决希望达到的功能效果。

在复杂信息时代过渡到真正的人工智能时代之间,我们认为会有一个新的短暂时期,叫新计算时代,我们关心计算、交互、数据,更要关心人工智能。
image.png

2.1.3 随着时代发展,编程语言有哪些?

全世界有600多种编程语言。
image.png

C语言:适合“计算机类专业”做“底层程序”的开发
C语言本质是希望编程者理解计算机系统结构,使得编写的程序更符合计算机的系统结构,让它运行起来的效率更高。它核心要解决的是性能问题,这是因为C语言诞生在计算机系统结构时代,它是用于写操作系统的语言,在计算机诞生之初,计算机内存只有几兆,如果编程者不关注内存问题,那编写的程序是很难正确运行起来。
image.png

Java语言:适合“软件类专业”
诞生在一个有意义的时期,那就是网络和视窗时代。当时所有计算机都希望能与其它计算机进行交互,但是在一台计算机上编写的程序,是不是能在另一台计算机上运行呢?这就是一个问题。所以Java语言提出了“采用面向对象的方式”,通过“跨平台的方法”解决“跨平台的问题”。面向对象又进一步的抽象了计算机编程代码的级别,使得代码的复用更为高级和灵活。
image.png

C++:适合“计算机类专业”作为一门核心的编程语言来学习
既有C语言的演进,又有面向对象的特点。
image.png

VB:适用对象不确定
也诞生于网络视窗时代,如今的桌面应用已经变的很少了。
image.png

Python:适合各类专业
只希望编程者去理解问题的求解,目前在人工智能领域使用广泛。
发展于复杂信息时代。
image.png

不同语言发展于不同的时期,服务于不同时代的目标。
Python语言是计算机时代演进的选择。因为2018年以后带来了大量的计算问题,要解决日益增长的计算需求,要用什么语言呢?
image.png

Python语言有很多特性,标志着它有很多功能用法。但是只需要记住一点,他是通用语言,也就是说这门语言可以用于普世的计算问题求解的开发。无论你想做一个图形运算、还是想解决一个操作系统的文件处理问题,还是想发现一个引力波,都可以使用Python,它并不局限于某一个领域,所以它的通用性是它最大的特点。
image.png

2.1.4 Python的特点和优势

Python的最大特点和优势是语言简洁,它的代码量是C语言代码量的不到10%。不到10%的代码量可以带来更少的编程时间、调试的工作量,以及非常好的维护体验。编程速度提高十倍。
通过强制缩进强制可读性:Python写出的代码非常整洁和漂亮。
有较少的底层语法元素:它不去操作内容或很低级的接口,所以编写程序时会比较容易和简单。
Python另一大特点是生态高产。通过丰富的第三方库,可以将python的编程速度再提高十倍。
第三方库:是由全球的工程师、爱好者在自己的工作中形成的,这些库开源、开放,任何人都可以通过简单的安装使用。每年以2万的数量增长第三方库。
image.png

使用21行python,将写实照片转化为手绘风格。
image.pngimage.png

2.1.5 如何看待python语言?

国际上有句话叫“人生苦短,我学python”
1.python归python,C归C
python语言能做python语言能做的事情,但是涉及到计算机操作系统底层、内存、接口方面的工作,还是要有底层的C语言来去完成。由C语言完成的代码,可以经过封装形成Python的接口,python再以第三方库或语句的形式来调用C语言代码。而不需要和计算机内存打交道的,或者说对效率执行速度没有更高要求的程序,我们完全可以通过Python语言来实现它。
2.Java适合特定的开发和岗位需求
比如安卓手机端端原生应用开发、包括某一些网络应用的后台中间健的开发等。
3.还有一类语言像HTML和CSS和JS语言,这类语言是用来做网络前端开发等。它们不可替代,我们常听到一个词叫全栈能力,指的是你要会前端的技术,同时还要会后端的技术(python是后端候选之一)。
4.R/Go/Matlab语言,在特定的数据处理相关领域,有很大的作用。
image.png
image.png
image.png
关注工具变革的力量

2.1.6 编程语言的种类和超级语言

机器语言和汇编语言并不适合编程,更适合底层的计算机硬件的设计和开发。
image.png
image.png

高级语言的编写和计算机CPU型号无关,更加友好。
image.png

此外还有一种超级语言,除了和CPU型号无关,还具有超级粘性。python是目前世界上,具有最庞大生态的语言。是目前唯一的超级语言,前进步伐不可阻挡。
image.png
image.png

2.2 实例2:Python蟒蛇绘制

image.pngimage.png
image.png

image.png
#PythonDraw.pyimport turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor(“purple”)
turtle.seth(-40)
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40 * 2/3)
turtle.done()

image.png
image.png

2.3 模块1:turtle库的使用

image.png
image.png
image.png

2.4 turtle程序语法元素分析

画笔控制函数:
image.png
成对出现指:画笔有抬起,就要有落下。
image.png

运动控制函数:
image.png
image.png

方向控制函数:
绝对角度和相对角度方向控制,只控制方向,不让海龟走动。
image.png

循环语句
右侧加了一个逗号,输出时就会有一个空格。
image.png

range()函数
最主要的作用时形成计数循环。
image.png