python的setheading什么意思_⽤Python告诉你什么是佩奇昨天在CSDN看到⼀篇⽂章《啥是佩奇,Python 告诉你!》,很有启发,遗憾的是代码没有给全,正好可以把这个作为⼀个练习,把剩余的部分补全。
效果视频:
基本思路是选好画板⼤⼩,设置好画笔颜⾊,粗细,定位好位置,依次画⿐⼦,头、⽿朵,眼睛,腮,嘴,⾝体,尾巴,⼿脚,完事。
turtle 是 Python 内置的⼀个⽐较有趣味的模块,俗称海龟绘图,它是基于 tkinter 模块打造,提供⼀些简单的绘图⼯具。
在海龟作图中,我们可以编写指令让⼀个虚拟的(想象中的)海龟在屏幕上来回移动,这个有点类似以前的LOGO海龟画图。这个海龟带着⼀只钢笔,我们可以让海龟⽆论移动到哪都使⽤这只钢笔来绘制线条。通过编写代码,以各种很酷的模式移动海龟,我们可以绘制出令⼈惊奇的图⽚。使⽤海龟作图,我们不仅能够只⽤⼏⾏代码就创建出令⼈印象深刻的视觉效果,⽽且还可以跟随海龟看看每⾏代码如何影响到它的移动。这能够帮助我们理解代码的逻辑。所以海龟作图也常被⽤作新⼿学习 Python 的⼀种⽅式。
了解了tuttle的⽤法之后就可以开始实战了。
全部代码:#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2019-01-20 22:23
# @Author : Apull
# @File : 佩奇.py
from turtle import *
def nose(x, y):  # ⿐⼦
penup()  # 提起笔
goto(x, y)  # 定位
pendown()  # 落笔,开始画
setheading(-30)  # 将乌龟的⽅向设置为to_angle/为数字(0-东、90-北、180-西、270-南)
begin_fill()  # 准备开始填充图形
a = 0.4
for i in range(120):
if 0 <= i
a = a + 0.08
left(3)  # 向左转3度
forward(a)  # 向前⾛a的步长
else:
a = a - 0.08
left(3)
forward(a)
forward(25)
setheading(0)
forward(10)
pendown()
pencolor(255, 155, 192)  # 画笔颜⾊
setheading(10)
begin_fill()
circle(5)
color(160, 82, 45)  # 返回或设置pencolor和fillcolor end_fill()
penup()
setheading(0)
forward(20)
pendown()
pencolor(255, 155, 192)
setheading(10)
begin_fill()
circle(5)
color(160, 82, 45)
end_fill()
def head(x, y):  # 头
color((255, 155, 192), "pink")
penup()
goto(x, y)
setheading(0)
pendown()
begin_fill()
setheading(180)
circle(300, -30)
circle(100, -60)
circle(80, -100)
circle(-300, 15)
penup()
goto(-100, 100)
pendown()
setheading(-30)
a = 0.4
for i in range(60):
if 0 <= i
a = a + 0.08
lt(3)  # 向左转3度
fd(a)  # 向前⾛a的步长
python新手代码画图else:
a = a - 0.08
lt(3)
fd(a)
end_fill()
def ears(x, y):  # ⽿朵
color((255, 155, 192), "pink") penup()
goto(x, y)
pendown()
begin_fill()
setheading(100)
circle(-50, 50)
circle(-10, 120)
circle(-50, 54)
end_fill()
penup()
setheading(90)
forward(-12)
setheading(0)
setheading(100)
circle(-50, 50)
circle(-10, 120)
circle(-50, 56)
end_fill()
def eye(x, y):  # 单眼
penup()
goto(x, y)
pendown()
pencolor((255, 155, 192)) begin_fill()
setheading(0)
fillcolor((255, 255, 255)) circle(15)
end_fill()
penup()
goto(x-5, y + 12)
pendown()
begin_fill()
setheading(0)
color((0, 0, 0))
circle(3)
end_fill()
def eyes(x, y):  # 眼睛 -20, 120 eye(x, y)  # 右眼
eye(x + 40, y - 15)  # 左眼
def cheek(x, y):  # 腮
color((255, 155, 192))
penup()
goto(x, y)
pendown()
end_fill()
def mouth(x, y):  # 嘴
color(239, 69, 19)
penup()
goto(x, y)
pendown()
setheading(-80)
circle(30, 40)
circle(40, 80)
def body(x, y):  # ⾝体 -20, -20 pencolor("red")
fillcolor(255, 100, 100)
penup()
goto(x, y)
pendown()
begin_fill()
setheading(225)
circle(300, 45)
setheading(0)
fd(300)
setheading(90)
circle(300, 45)
pencolor((255, 155, 192)) setheading(220)
circle(-93, 80)
end_fill()
def arm(x, y):  #⼿臂 -50, -50 pu()
goto(x, y)
pencolor((255, 155, 192))
pd()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。