1946-1981(35年)计算机系统结构时代,1946年第一台计算机诞生,产生了许多的CPU、操作系统、解释器、编译器等。重点解决计算能力问题。
1981-2008(27年)网络和视窗时代
1981年个人PC机诞生,2008年安卓系统诞生。互联网和Windows视窗操 作系统得到发展。主要解决人与计算机、计算机与计算机的交互问题,人与计算机的交互问题通过操作系统视窗体现,计算机与计算机的交互问题通过互联网体现。
2008-2016(8年)复杂信息系统时代,数据问题,数据接口、存储等问题。
2016- 人工智能时代,人类的问题
1.编程语言的种类
编程语言 | 描述 |
---|---|
机器语言 | 二进制代码表示指令;CPU可直接执行,与CPU型号有关 |
汇编语言 | 二进制代码直接对应助记符;与CPU型号有关,程序不通用,需要汇编器转换 |
高级语言 | 更接近自然语言,更容易描述计算问题,代码与具体CPU型号无关,编译后运行 |
超级语言 | 有庞大的计算生态,可利用已有代码功能,编程不再是刀耕火种而是集成开发 |
#PythonDraw.py
import turtle #引入绘图库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()
1.turtle(海龟)库是turtle绘图体系的Python实现
1969年诞生,主要用于程序设计入门;
Python语言的标准库之一;
入门级图形函数绘制库。
2.标准库
Python计算生态 = 标准库 + 第三方库
标准库:随解释器安装到操作系统的功能模块
第三方库:需经过安装才能使用的功能模块
库Library、包Package、模块Module,统称模块。
3.turtle的原(wan)理(fa)
turtle是一种真实的存在
有一只海龟,其实正在窗体正中心,在画布上游走;
走过的轨迹形成了绘制的图形;
海龟由程序控制,可以改变颜色、宽度等。
1.窗体是turtle的画布空间,最小单位为像素
2. 电脑显示器中左上角为坐标原点(0,0),窗体左上角是turtle绘图窗体的坐标原点。
3. turtle.setup(width,height,startx,starty)
----width、height指窗体本身的宽度和高度,(startx,starty)起始点坐标指窗体左上角坐标相对于屏幕左上角的坐标
----setup()设置窗体大小及位置
----4个参数后两个可选,后两个省略后,窗体默认在屏幕的中间
----setup()不是必须的
1.空间坐标体系包含绝对坐标和海龟坐标两种。
2.绝对坐标:窗体画布正中心坐标(0,0),向右为x轴正向,向上为y轴正向。海龟绘制过程中画布中间的空间坐标体系,最常使用。
goto函数:
利用空间坐标改变turtle的行进位置可使用goto函数。
goto(x,y)指让在任何位置的海龟到达某一坐标位置。
3.海龟坐标:海龟本身从它自身的运动来看,当前行进方向为前进方向,反方向为后退方向,左侧叫左侧方向,右侧为右侧方向。
控制海龟的函数:改变海龟在空间坐标中的位置
——turtle.fd向海龟正前方运行
——turtle.bk向海龟的反方向运行
——turtle.circle以海龟当前位置左侧某点为圆心,曲线运行
1.turtle在空间坐标体系中运行方向也有一个绝对角度。从绝对坐标角度来看,x轴表示0°或360°以此类推。
——seth()改变海龟行进方向
——seth()只改变方向但不行进
——angle为绝对度数
例如turtle.seth(45)或turtle.seth(-135)之后使用turtle.fd()向当前方向运行
2.从海龟坐标角度来看,能更好改变海龟运行方向,使用左右方式改变运行方向。
——turtle.left(angle)向左改变运行方向
——turtle.right(angle)向右改变运行方向
Z型曲线绘制(自己先写了一遍)
import turtle
turtle.goto(200,0)
turtle.seth(225)
turtle.fd(300)
turtle.seth(0)
turtle.fd(200)
对比发现自己写的和所给代码都是Z的绘制,但我自己写的是正着的Z,示例代码是斜着的Z。
1.由红绿蓝构成万物色;覆盖视力所能感知的所有颜色;RGB每色取值范围0—255整数或0—1小数
颜色 | RGB值 |
---|---|
白色 | 255,255,255或1,1,1 |
黄色 | 255,255,0或1,1,0 |
洋红(magenta) | 255,0,255或1,0,1 |
青色 (cyan) | 0,255,255或0,1,1 |
蓝色 | 0,0,255或0,0,1 |
黑色 | 0,0,0 |
turtle库默认采用小数值表示颜色即turtle.colormode(1.0),可使用turtle.colormode(255)切换为整数值