Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)

Python语言程序设计笔记2(北理工mooc)

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()

运行图
Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第1张图片
turtle库:海归库,Python标准库之一,入门级绘图库。
Python计算生态由以下两部分构成:

  • 标准库:随解释器直接安装到操作系统的功能模块。
  • 第三方库:需要经过安装才能使用的功能模块。

库Libarary,包Package,模块Module统称为模块。
该模块可以理解为在窗体中心有一只海龟,通过控制它进行移动,其移动的轨迹便是绘出的图形吗,可以对它的颜色宽度等进行控制。
Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第2张图片
turtle.setup(width,height,startx,starty)用于建立起显示绘图的窗体。
以屏幕的左上角为起点,由(startx,starty)来确定窗体左上角的位置,再将窗体的左上角位置固定不动并作为起点,利用(width,height)来确定窗口的大小。该函数后两个参数为可选参数且该函数也不是必须要有的函数。

turtle空间坐标系:

  • 绝对坐标:Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第3张图片
    在此处可以使用turtle.goto(x,y)函数,即令海龟从当前位置直线移动到绝对坐标(x,y)的位置
  • 海龟坐标:Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第4张图片
    此处可以使用turtle.fd(a)令海龟向前进方向移动a距离;使用turtle.bk(b)令海龟向后退方向移动b距离;使用turtle.circle(r,angle)令海龟以左侧方向上的某一个点为圆心在圆周上曲线运行,其中r控制着圆心与海龟间的距离,angle控制海龟沿着圆周运行的角度。

turtle角度坐标系

  • 绝对坐标系:Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第5张图片
    turtle.seth(angle)用于控制海龟的行进方向,改变方向时不会前进,angle为绝对度数。如turtle.seth(45)可以令海龟朝向45°方向。
  • 海龟坐标系
    Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第6张图片
    turtle.right(angle)和turtle.left(angle)可以令海龟以当前方向为基准进行前进方向的偏移。如使用两次turtle.right(45)则等价于使用一次turtle.right(90)。

RGB色彩体系

RGB指红绿蓝三个通道的颜色组合。每个颜色的取值范围为哦0到255的整数或0到1的小数。
常用RGB色彩:
Python基本图形绘制---Python语言程序设计笔记2(北理工mooc)_第7张图片

turtle库默认使用RGB的小数表示。
turtle.colormode(mode)。若mode=1,则采用小数表示,若mode=255,则采用整数表示。

语法元素分析

库引用和import:库引用是python扩展功能的一种方式,使用保留字import完成,采用.()的编码风格,即<库名>.<函数名>.(<函数参数>)的形式。
使用import和from共同完成:如from <库名> import <函数名>,from <库名> import ,此处import和 之间有无空格均可。使用from <库名> import的方式引入库时,对函数的调用可以省略掉<库名>.*的部分,如turtle.right(45)可以写成right(45)。这种写法虽然方便,但有可能出现函数重名的情况。

使用import和as共同完成:使用import turtle as t的方式,turtle为库名,t为库别名,调用函数时可用库别名代替掉库名进行使用,如可将tuetle.right(45)写成t.right(45)的形式,这种方法不仅方便,且避免了函数重名的情况。

turtle的画笔控制函数:penup、pendown、pensize、pencolor等。画笔操作后一直有效,一般成对出现。
turtle.penup()别名turtle.pu(),即抬起画笔,此后海龟的运动轨迹不会绘制在画布上。
turtle.pendown()别名turtle.pd(),即放下画笔,此后海龟的运动轨迹会绘制在画布上。
turtle.pensize(width)别名turtle.width(width),用于控制画笔的粗细。
turtle.pencolor(color)用于控制画笔的颜色,color为颜色字符串或r,g,b值。color有三种形式(以紫色为例):

  1. 颜色字符串:“purple”
  2. RGB小数值:0.63,0.13,0.94
  3. RGB元组值:(0.63,0.13,0.94)

运动控制函数:turtle.forward(d)别名turtle.fd(d),控制海龟前进,d为距离,可为负数。
方向控制函数:turtle.setheading(angle)别名turtle.seth(angle)。
turtle.done()函数:在文件式的描写方法中,使用该函数作为程序的末尾,程序运行后不会退出,需要手动关闭窗口退出。若希望程序运行后自动退出,去掉最后一行即可。
turtle.undo()用于撤销海龟的上一步操作。
turtle.reset()用于清空turtle窗口,并重置turtle位置和状态。
turtle.clear()用于清空turtle窗口,但不改变turtle位置和状态。
turtle.circle(radius,extent=None,steps=None):radius为半径,extent为画出弧线的圆心角大小,steps控制从起点到终点的直线步数,如turtle.circle(30,steps=50)可以绘出一个正五边形图案。

循环语句与range函数

for <变量> in range(<参数>):
    <被循环执行的语句>

<变量>为每次循环的计数,0到<参数>-1。
range()函数:一般有两种形式

  • range(N):产生0到N-1的整数序列,共N个。
  • range(M,N):产生M到N-1的整数序列,共M-N个。

你可能感兴趣的:(Python基础学习笔记,python)