从零开始学Python(二) Python基本图形绘制

本文思维导图

怎么把两幅图画在一起Python python画两个图形_python

一、深入理解Python语言

1、计算机技术的演进
(1)1946-1981:计算机系统结构时代。计算能力问题。
(2)1981-2008:网络和视窗时代。交互问题。
(3)2008-2016:复杂信息系统时代。2008安卓操作系统产生。数据问题。
(4)2016-:人工智能时代。人类的问题。
2、编程语言的多样初心
(1)C:
①学习内容:指针、内存、数据类型
②语言本质:理解计算机系统结构
③解决问题:性能
(2)JAVA:
①学习内容:对象、跨平台、运行时
②语言本质:理解主客体关系
③解决问题:跨平台
(3)C++:
①学习内容:对象、多态、继承
②语言本质:理解主客体关系
③解决问题:大规模程序
(4)Python:
①学习内容:编程逻辑、第三方库
②语言本质:理解问题求解
③解决问题:各类问题
3、Python语言的特点:通用、脚本、开源、跨平台、多模型
(1)特点与优势:
①语法简洁:强制可读性、较少的底层语法元素、多种编程方式、支持中文字符。(C代码量的10%)
②生态高产:快速增长的计算生态、避免重复造轮子、开放共享、跨操作系统平台(众多第三方库)
(2)看待Python:Python是最高产的程序设计语言,掌握抽象并求解计算问题综合能力的语言,了解产业界解决复杂计算问题方法的语言,享受利用编程将创新变为实现乐趣的语言。(工具决定思维!)
4、超级语言的诞生:
(1)编程语言的种类:
①机器语言:一种二进制语言,直接使用二进制代码表达指令。计算机硬件(CPU)可直接执行,与具体CPU型号有关。
②汇编语言:一种将二进制代码直接对应助记符的编程语言。汇编语言与CPU型号有关,程序不通用,需要汇编器转换。
③高级语言:更接近自然语言,同时更容易描述计算问题。高级语言代码与具体CPU型号无关,编译(或解释)后运行。
④超级语言(Python):粘性整合已有程序,具备庞大计算生态。很容易利用已有代码功能,编程思维是集成开发。

二、实例:Python蟒蛇绘制

#PythonDraw.py
import 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()

import保留字,引入了一个绘图库,名字叫:turtle

三、turtle库的使用

1.turtle库基本介绍

(1)概述:Python语言的标准库之一,入门级的图形绘制函数库。

(Python计算生态=标准库+第三方库。标准库是随解释器直接安装到操作系统中的功能模块,第三方库需要经过安装才能使用。库Library、包Package、模块Module,统称模块。)

(2)原理:有一只海龟,其实在窗体正中心,在画布上游走。走过的轨迹形成了绘制的图形。海龟由程序控制,可以变换颜色、改变宽度等。

2、turtle绘图窗体布局

绘画窗体:turtle的一个画布空间,最小单位是像素。

①turtle.setup(width, height, startx, starty)设置窗体的大小及位置

②4个参数中后两个可选(不指定,则居中)

③setup()不是必须的

3、turtle空间坐标体系

绝对坐标:海龟起始点在(0,0)

函数turtle.goto(X,Y),让海龟去点(X,Y)

海龟坐标:turtle.fd(d)前进,turtle.bk(d)后退,turtle.circle(r,angle),让海龟以当前位置左侧的某一个点为圆心作曲线运动。

4、turtle角度坐标体系

绝对角度:x轴正向为0度。turtle.seth(angle)改变海龟行进方向(但不行进),angle为绝对角度。

海龟角度:turtle.left(angle)左转 turtle.right(angle)右转。

5、RGB色彩体系

由三种颜色构成的万物色,RGB每色取0-255或0-1

常用色彩:

怎么把两幅图画在一起Python python画两个图形_python_02


怎么把两幅图画在一起Python python画两个图形_python_03


默认采用小数值来表示色彩,可切换为整数:turtle.colormode(mode)

Mode:—1.0:RGB小数模式

—255:RGB整数模式

四、turtle程序语法元素分析

1、库引用与import
(1)库引用:扩充Python程序功能的方式
①使用import保留字完成,采用<a>.<b>()编码风格
import<库名>
<库名>.<函数名>(<函数参数>)
②使用from和import保留字共同完成
from <库名> import <函数名>
from <库名> import*
<函数名>(<函数参数>)
(注:第一种方法不会出现函数重名问题,第二种方法会出现。)
③使用import和as保留字共同完成
import <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
给调用的外部库关联一个更短、更适合自己的名字。
2.turtle画笔控制函数
(1)画笔控制函数1:画笔操作后一直有效,一般成对出现。
-turtle.penup() 别名 turtle.pu() 抬起画笔
-turtle.pendown() 别名 turtle.pd() 落下画笔
(2)画笔控制函数2:画笔设置后一直有效,直至下次重新设置.
-turtle.pensize(width) 别名 turtle.width(width) 画笔宽度
-turtle.pencolor(color) color为颜色字符串或r,g,b值 画笔颜色
pencolor(color)的color参数可以有三种形式:
①颜色字符串:turtle.pencolor(“purple”)
②RGB的小数值:turtle.pencolor(0.63,0.13,0.94)
③RGB的元组值:turtle.pencolor((0.63,0.13,0.94))
(3)运动控制函数
①turtle.forward(d) 别名 turtle.fd(d) 向前行进,海龟走直线
-d:行进距离,可以为负数
②turtle.circle(r, extent=None) 根据半径r绘制extent角度的弧形
-r:默认圆心在海龟左侧r距离的位置(r为负数,则圆心在右侧)
-extent:绘制角度,默认是360度整圆
(4)方向控制函数
①turtle.setheading(angle) 别名 turtle.seth(angle) 改变行进方向,angle是绝对角度
②海龟角度:turtle.left(angle) 海龟向左转
turtle.right(angle) 海龟向右转
(5)循环语句与range()函数
①循环语句是按照一定次数循环执行的一组语句。
for <变量> in range (<参数>)
<被循环执行的语句>
-<参数>表示每次循环的次数,0到<次数>-1
②range()函数:产生循环计数序列
–range(N) 产生0到N-1的整数序列,共N个
–range(M,N) 产生M到N-1的整数序列,共N-M个