您的位置:首页 > 编程语言 > Python开发

Life is short,Use Python!-----Python双杀!-----Python基本图形绘制

2018-08-19 17:56 507 查看
版权声明: https://blog.csdn.net/JRK_CSDN/article/details/81838485

如果你会画一条线,那么你将能勾勒出整个世界。

文章目录

  • - 有点福利
  • - 先来点历史

    1946-1981
    计算机系统结构时代(35年)
    解决计算机的问题
    1981-2008
    网络和视窗时代(27年)
    解决交互问题
    2008-2016
    复杂信息系统时代(8年)
    解决数据处理问题
    2016-xxxx
    人工智能时代
    解决人类的问题
    • 信息化的发展非常迅速,变化周期在大幅度的减短。
    • 由原来解决构造问题转向解决服务大众的问题。
    • Python进步之路不可阻挡。

    - 语言的江湖

    机器语言
    代码直接执行,执行与CPU型号有关
    汇编语言
    包含助记符和汇编器,执行与CPU型号有关
    高级语言
    包含编译器或解释器,接近自然语言,可移植
    超级语言
    粘性整合已有程序,具有庞大计算生态

    - Turtle绘图体系

    1969年诞生,主要用于程序入门设计和LOGO开发

    Turtle Screen(界面设置)
    setup(width,height,*startx,*starty)
    设置窗体大小,单位为像素(px)
    title(titlestring)
    设置窗图形标题
    mode(mode)
    mode='standard' or 'logo'
    standard:起始指向正东,以逆时针为正
    logo:起始指向正北,以顺时针为正
    colormode(mode)
    mode=1 or 255 表示RGB表示形式
    speed(sp)
    sp=1~10 控制绘图速度
    Turtle PenMove(画笔动作)
    forward | fd(dis)
    dis=前进距离,单位px
    backward | back | bk(dis)
    dis=后退距离,单位px
    circle(r,ang)
    以r(左正右负)为半径,根据mode正方向 旋转ang度
    left | lt (ang)
    Turtle坐标下**左**转ang,单位 角度
    right | rt (ang)
    Turtle坐标下**右**转ang,单位 角度
    setx(x)
    设置起始坐标在(x,0)坐标上
    sety(y)
    设置起始坐标在(0,y)坐标上
    setheading | seth(ang)
    绝对坐标下Turtle头方向根据 mode正方向 旋转ang度
    goto(x,y)
    立即让Turtle到达(x,y)坐标处
    penup | pu | up()
    画笔抬起
    pendown | pd | down()
    画笔落下
    pensize | width()
    画笔线条宽度,单位px
    Turtle Color&filling(颜色与填充)
    color(*pencolor,*fillingcolor)
    colorstring / (R,G,B)均可,RGB参照colormode,可缺省
    pencolor(colorstring / (R,G,B))
    设置画笔颜色
    fillcolor(colorstring / (R,G,B))
    设置填充颜色
    begin_fill()
    开始填充标志
    end_fill()
    停止填充标志
    Turtle Others(其他)
    clear()
    清除图像,不改变Turtle位置
    degrees()
    设置为角度制
    radians()
    设置为弧度制
    showturtle | st()
    显示Turtle
    hideturtle | ht()
    显示Turtle

    来个自画像

    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()
    [/code]

    - 如何引入库—import

    import 库名
    引用: 库名 .函数名
    from 库名 import 函数名
    引用: 函数名
    from 库名 import *
    import 库名 as __
    引用: __ .函数名

    - For循环与range()函数

    • for <循环变量> in <循环区域>
    • range(M,N):产生从M到N-1以1为步长的整数序列,M可缺省,缺省值为0

    - 有点福利

    #太极生两仪
    import turtle
    turtle.speed(10)
    turtle.setup(650,650)
    turtle.pensize(5)
    
    #起点初始化
    turtle.penup()
    turtle.goto(0,-100)
    turtle.pendown()
    turtle.fillcolor(0,0,0)
    
    #一笔画外圈
    turtle.begin_fill()
    turtle.circle(50,180)
    turtle.circle(-50,180)
    turtle.circle(-100,180)
    turtle.end_fill()
    
    turtle.circle(-100,180)
    
    turtle.pensize(35)
    
    #起点二次初始化
    turtle.pencolor(1,1,1)
    turtle.penup()
    turtle.goto(0,50)
    turtle.pendown()
    turtle.circle(0)
    #起点三次次初始化
    turtle.pencolor(0,0,0)
    turtle.penup()
    turtle.goto(0,-50)
    turtle.pendown()
    turtle.circle(0)
    
    #############################################################################
    
    #两仪生四象
    turtle.pensize(10)
    
    ##########################################
    turtle.penup()  #北一
    turtle.goto(30,150)
    turtle.pendown()
    turtle.bk(60)
    
    turtle.penup()  #北二
    turtle.circle(10,180)
    turtle.pendown()
    turtle.bk(60)
    
    turtle.penup()  #北三
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.bk(60)
    
    turtle.penup()
    turtle.goto(0,150)
    turtle.pendown()
    ###########################################
    turtle.penup()  #南一
    turtle.goto(-30,-150)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    turtle.penup()  #南二
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    turtle.penup()  #南三
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    ###########################################
    turtle.penup()  #西一
    turtle.left(90)
    turtle.goto(-150,-30)
    turtle.pendown()
    turtle.fd(60)
    
    turtle.penup()    #西二
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    turtle.penup()  #西三
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(60)
    ###########################################
    turtle.penup()  #西一
    turtle.goto(150,30)
    turtle.pendown()
    turtle.bk(20)
    turtle.penup()
    turtle.bk(20)
    turtle.pendown()
    turtle.bk(20)
    
    turtle.penup()    #西二
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.bk(60)
    
    turtle.penup()  #西三
    turtle.circle(10,180)
    turtle.pendown()
    turtle.bk(20)
    turtle.penup()
    turtle.bk(20)
    turtle.pendown()
    turtle.bk(20)
    ###########################################
    
    #############################################################################
    
    #四象生八卦
    ##########################################
    turtle.penup()  #东北一
    turtle.goto(190,0)
    turtle.circle(190,45)
    turtle.pendown()
    turtle.bk(30)
    turtle.fd(60)
    
    turtle.penup()  #东北二
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(60)
    
    turtle.penup()  #东北三
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    ##########################################
    turtle.penup()  #西南一
    turtle.bk(30)
    turtle.circle(150,180)
    turtle.pendown()
    turtle.bk(30)
    turtle.fd(60)
    
    turtle.penup()  #西南二
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    turtle.penup()  #西南三
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    ##########################################
    turtle.penup()  #东南一
    turtle.bk(30)
    turtle.circle(190,90)
    turtle.pendown()
    turtle.bk(30)
    turtle.fd(60)
    
    turtle.penup()  #东南二
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    turtle.penup()  #东南三
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    ##########################################
    turtle.penup()  #西北一
    turtle.bk(30)
    turtle.circle(150,180)
    turtle.pendown()
    turtle.bk(30)
    turtle.fd(60)
    
    turtle.penup()  #西北二
    turtle.circle(-10,180)
    turtle.pendown()
    turtle.fd(60)
    
    turtle.penup()  #西北三
    turtle.circle(10,180)
    turtle.pendown()
    turtle.fd(20)
    turtle.penup()
    turtle.fd(20)
    turtle.pendown()
    turtle.fd(20)
    
    ##########################################
    turtle.pensize(1)
    turtle.done()
    [/code]

    阅读更多
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: