python第二周基本图形绘制

#pythonDraw.py(python蟒蛇)
import turtle #调用turtle(海龟)库
turtle.setup(650,350,200,200)#(width,height,startx,starty)确定长宽和窗体打开的位置,后面两个可省略,默认为屏幕中央。
turtle.penup() #提起画笔,海龟在飞行,不会在画布上留下痕迹
turtle.fd(-250) #移动到-250位置
turtle.pendown() #放下画笔,海龟在爬行
turtle.pensize(25) #画笔宽度,海龟的腰围
turtle.pencolor("green") #画笔颜色,海龟的颜色
turtle.seth(-40) #sethding确定方向为绝对角度-40°
for i in range(4): #循环4次,i从0开始,每循环一次+1,range(N)指0-(n-1)range(M,N)指M到(N-1)的整数序列
    turtle.circle(40, 80) #以半径为40的圆画80°的圆弧,圆心默认为画笔左侧半径距离,默认画整圆
    turtle.circle(-40, 80)#以半径为-40°
turtle.circle(40, 80/2)#同上,画40°的圆弧
turtle.fd(40) #forward,海龟走直线,可以为负数,即走反方向
turtle.circle(16, 180) #转向180°
turtle.fd(40 * 2/3)#移动
turtle.done()//时图像绘制完成后窗体不会消失,如不需要删掉即可

turtle空间坐标体系

turtle角度坐标体系

上述代码为<a>.<b>()编码分格,即有很多turtle.<函数>,较为繁琐,改进方法有两种

一.form <库名> import <函数名>即(form <库名> import*)

改进后的代码如下

from turtle import *
setup(650,350,200,200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("red")
seth(-40)
for i in range(4):
    circle(40, 80)
    circle(-40, 80)
circle(40, 40)
fd(40)
circle(16, 180)
fd(40 * 2/3)
done()

这种方式虽然方便,但是当调用库多的时候会有重名的问题,所以一般用第二种方法

二. import <库名> as<库别名>。将库名赋予一个更方便的名字;改进代码如下

import turtle as t
t.setup(650,350,200,200)
t.penup()
t.fd(-250)
t.pendown()
t.pensize(25)
t.pencolor("red")
t.seth(-40)
for i in range(4):
    t.circle(40, 80)
    t.circle(-40, 80)
t.circle(40, 40)
t.fd(40)
t.circle(16, 180)
t.fd(40 * 2/3)
t.done()

这种即改善了原来的繁琐也避免的重名

方向控制函数:除了上述的turtle.seth()函数还有turtle.left(angle)和turtle.right(angle).其中angle为偏转的角度

猜你喜欢

转载自www.cnblogs.com/mouzaisi/p/12177843.html
今日推荐