zoukankan      html  css  js  c++  java
  • [MoocPython课程]实例-蟒蛇绘制

    Python绘图

    1.绘制蟒蛇实例

    1.代码编写

    import turtle
    turtle.setup(650,350,200,100)
    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()

    2.逐行解析

    1.引入turtle库

    2.setup函数建立窗口,参数1,2为窗口尺寸,参数3,4为窗口左上角坐标

    3.penup函数提笔,防止留下痕迹

    4.turtle.fd()函数,由于参数为负,海龟向后方移动250像素

    5.放下笔

    6.调节海龟腰围,即画笔粗细尺寸

    7.调节画笔的颜色,rgb字符串为紫色

    8.seth函数调节绝对角度为-40度

    9.循环函数for i in range(4):会重复执行5次,0-4

    10.circle()函数,让海龟划弧行走,40为半径,划80度,这里的正负决定圆心在海龟的左侧或者右侧

    11.同10,仅方向不同

    12.同10,仅弧度不同

    13.turtle.fd()函数,海龟前进40像素

    14.同10,

    15.同13,

    16.若希望窗体自动退出,就去掉这行代码,否则手动退出

    2.Turtle库的使用

    turtle(海归)库是turtle绘图体系的python,是python语言的标准库之一

    标准库和第三方库的区别:

    标准库是随解释器直接安装到操作系统的功能模块

    第三方库是需要经过安装才能使用的功能模块

    1.turtle的绘图窗体

    -setup()设置窗体大小及位置

    turtle.setup(width,height,startx,starty)

    其中startx和starty是可选的,若没有设置数值,则默认为窗体在屏幕的正中心

    2.turtle的空间坐标体系

    turtle.bk(d) 向前进d个像素

    turtle.fd(d) 向后进d个像素

    turtle.circle(r,angle) 向angle角度以r为半径画弧

    turtle.seth(angle) 使海龟转向角度

    turtle.left(angle) 使海龟向左转angle度

    turtle.right(angle) 使海龟向右转angle度

    3.RGB色彩体系

    4.画笔控制函数

    turtle.penup() 抬起画笔

    turtle.pendown() 放下画笔

    turtle.pensize() 设置海龟的腰围,/画笔的宽度 turtle.width()

    turtle.pencolor() 画笔的颜色,其参数既可以给颜色字符串,也可以给RGB的小数值

    5.运动控制函数

    决定海龟走直线/曲线

    turtle.forward() / turtle.fd() 向前行进,走直线

    turtle.circle() 走曲线,两个参数,半径和角度

    实例之8角形

    import turtle as t
    t.pensize(2)
    for i in range(8):
        t.fd(100)
        t.left(135)
    t.done()

    只要稍加修改,就可以改成8边型咯

    import turtle as t
    t.pensize(2)
    for i in range(8):
        t.fd(100)
        t.left(45)
    t.done()

  • 相关阅读:
    (转)spring学习之@ModelAttribute运用详解
    (转)Spring3MVC 在JSP中使用@ModelAttribute
    (转)如何在maven的pom.xml中添加本地jar包
    (转)linux中项目部署和日志查看
    (转)Schema
    (转)xml
    (转)Dom4J解析
    判断一个请求是否为Ajax请求
    spring mvc中拦截器配置mvc:interceptors
    Freemarker自定义方法
  • 原文地址:https://www.cnblogs.com/hzshisan/p/12571086.html
Copyright © 2011-2022 走看看