进一步地,我尝试学习了Python 的其中一个非常重要的函数库——turtle库

这是一个用于python绘图的函数库,方便又好用!

对于它的安装,现在我们所用的python 3的系统运用到的指令是:

pip3 install turtle

安装完之后就可以使用它啦~这样就可以开始画画啦~(激动)

一、turtle库基本介绍:

python的turtle库是一个直观有趣的图形绘制的函数库;

turtle库有一个绘制框架:“”小乌龟”有转向,行进的动作,方向有“前进方向”,“后退方向”,“左侧方向”,“右侧方向"等,行进动作有“前进”,“后退”,“旋转”等;

二、开始绘图:

1.建立画布

我们可以用过代码setup()或screensize()建立一个窗口画布,我们就可以在上面作画了!

我现在主要用setup(),其中setup(width,height,startx,starty)

前两个参数是设置屏幕的宽高比例;

后两个是设置窗口在屏幕的的位置;

2.设置画笔

对于画笔,我了解到有几个设置的函数(在引用了from turtle import*的情况下):

pensize()是画笔的大小,pensize(2)即说明画笔大小为2个像素点;

penup()是抬起画笔动作;

pendown()是放下画笔动作;

pencolor()是设置画笔的颜色……

恩,了解了这些,我已经可以开始好好利用我的画笔绘画了!

当然还少不了其他一些指令函数:

forward()/fd()    #向前走

backward()       #向后走

right(degree)    #向右转

left(degree)      #向左转

speed(speed)  #绘画速度

begin_fill()        #开始填充

end_fill()           #结束填充……

了解到这些以后,就可以开始实战了!

三、我的作品:

1.画叠加的等边三角形

代码:

from turtle import*
pensize(3)
color('black','white')
penup()
begin_fill()
seth(90)
fd(50)
pendown()
seth(-120)
fd(200)
seth(0)
fd(200)
seth(120)
fd(100)
seth(180)
fd(100)
seth(-60)
fd(100)
seth(60)
fd(100)
seth(120)
fd(100)
end_fill()
done()

效果:

2.太极!!

代码:

from turtle import*
pensize(2)
color('black','black')
begin_fill()
circle(80)
end_fill()
begin_fill()
seth(180)
color('black','white')
seth(180)
circle(-80,180)
circle(-40,180)
end_fill()
begin_fill()
color('black','black')
circle(40,180)
end_fill()
penup()
seth(90)
fd(30)
seth(0)
pendown()
begin_fill()
color('black','white')
circle(10)
end_fill()
penup()
seth(90)
fd(80)
seth(0)
pendown()
begin_fill()
color('black','black')
circle(10)
end_fill()
done()

效果:

3.国际象棋盘

代码:

from turtle import*
import math
pensize(2)
speed(50)
temp=0
num=0
penup()
seth(120)
fd(150)
pendown()
seth(0)
for i in range(10):
  for i in range(10):
    if(temp%2==0):
      begin_fill()
      color('black','white')
      for i in range(4):
        fd(40)
        right(90)
        fd(40)
        temp+=1
      end_fill()
    else:
      begin_fill()
      color('black','black')
      for i in range(4):
        fd(40)
        right(90)
      fd(40)
      temp+=1
      end_fill()
  if(num%2==0):
    right(90)
    fd(80)
    right(90)
    num+=1
    if(num==10):
       break
  else:
    left(90)
    left(90)
    num+=1

penup()
seth(120)
fd(300)
pendown()

seth(-30)           #写字开始
fd(45)

penup()
seth(194)
fd(70)
pendown()

seth(10)
fd(60)
right(100)
fd(90)
seth(30)
fd(20)                 #偏旁部首写完

penup()
seth(85)
fd(122)
pendown()

seth(0)               #一横
fd(50)

penup()
seth(195)
fd(50)
pendown()

seth(0)               #二横
fd(45)

penup()
seth(195)
fd(70)
pendown()

seth(0)               #三横
fd(80)

penup()
seth(118)
fd(62)
pendown()

seth(-90)
fd(59)                #右上结束

penup()
seth(-148)
fd(20)
pendown()

seth(-90)
fd(90)
seth(90)
fd(90)
seth(0)
fd(39)
right(90)
fd(92)
seth(120)
fd(15)                 #月外框结束

penup()
fd(55)
pendown()

seth(0)
fd(35)

penup()
seth(220)
fd(45)
pendown()

seth(0)
fd(35)                   #写字结束

hideturtle()
end_fill()
done()

(我还特地写了个字~~够酷吧!)

学到这,我深刻认识到原来会用turtle库是多么有用!我甚至觉得可以任意画图了!

Python太棒了!

对于Python turtle的学习笔记的更多相关文章

  1. Python turtle库学习笔记

    1.简介 Python的turtle库的易操作,对初学者十分友好.对于初学者来说,刚学编程没多久可以写出许多有趣的可视化东西,这是对学习编程极大的鼓舞,可以树立对编程学习的信心.当然turtle本身也 ...

  2. Requests:Python HTTP Module学习笔记(一)(转)

    Requests:Python HTTP Module学习笔记(一) 在学习用python写爬虫的时候用到了Requests这个Http网络库,这个库简单好用并且功能强大,完全可以代替python的标 ...

  3. python网络爬虫学习笔记

    python网络爬虫学习笔记 By 钟桓 9月 4 2014 更新日期:9月 4 2014 文章文件夹 1. 介绍: 2. 从简单语句中開始: 3. 传送数据给server 4. HTTP头-描写叙述 ...

  4. Python Built-in Function 学习笔记

    Python Built-in Function 学习笔记 1. 匿名函数 1.1 什么是匿名函数 python允许使用lambda来创建一个匿名函数,匿名是因为他不需要以标准的方式来声明,比如def ...

  5. Python快速入门学习笔记(二)

    注:本学习笔记参考了廖雪峰老师的Python学习教程,教程地址为:http://www.liaoxuefeng.com/wiki/001374738125095c955c1e6d8bb49318210 ...

  6. python数据分析入门学习笔记

    学习利用python进行数据分析的笔记&下星期二内部交流会要讲的内容,一并分享给大家.博主粗心大意,有什么不对的地方欢迎指正~还有许多尚待完善的地方,待我一边学习一边完善~ 前言:各种和数据分 ...

  7. python网络爬虫学习笔记(二)BeautifulSoup库

    Beautiful Soup库也称为beautiful4库.bs4库,它可用于解析HTML/XML,并将所有文件.字符串转换为'utf-8'编码.HTML/XML文档是与“标签树一一对应的.具体地说, ...

  8. Python之xml学习笔记

    XML处理模块 xml是实现不同语言或程序之间进行数据交换的协议,跟json差不多,但json使用起来更简单,至今很多传统公司如金融行业的很多系统的接口还主要是xml. xml的格式如下,就是通过&l ...

  9. python网络爬虫学习笔记(一)Request库

    一.Requests库的基本说明 引入Rquests库的代码如下 import requests 库中支持REQUEST, GET, HEAD, POST, PUT, PATCH, DELETE共7个 ...

随机推荐

  1. Running Tensorflow on AMD GPU

    keras+tensorflow: based on AMD GPU https://rustyonrampage.github.io/deep-learning/2018/10/18/tensorf ...

  2. ffmpeg错误:Invalid UE golomb code

    解决方案在github https://github.com/FFmpeg/FFmpeg/commit/c51c08e0e70c186971385bdbb225f69edd4e3375 问题简要描述为 ...

  3. idea工具maven生命周期clean,compile,install,package区别

    idea工具maven projects里面有9种生命周期,今天刚好遇到,顺便分享下自己的理解.生命周期是包含在一个项目构建中的一系列有序的阶段.最常用的两种打包方法:一:clean,package( ...

  4. 初学python之路-day06

    每天一篇总结,今天学习了大概有深浅拷贝,元组类型,字典类型与集合类型.第一次感觉有点难度,需要花费多点时间来掌握. 深浅拷贝,分为值拷贝.浅拷贝.深拷贝. ls = [1, 'abc', [10]] ...

  5. [原创]X-HDL 4.2安装与使用

    由于涉及到VHDL工程,但实际工作中,用Verilog更多些,因此安装X-HDL进行转换,安装步骤与使用如下: X-HDL进行破解,破解如下: 安装完毕后,打开一个带转换的文件,进行如下操作: 链接: ...

  6. SpringBoot的自动配置

    1.根据条件来装配bean,SpringBoot的自动配置,根据条件进行自动配置. 首先创建一个接口,如下所示: package com.bie.encoding; /** * * @Descript ...

  7. C# DataConstruct 数据结构关于 Array,ArrayList,List,HashTable,Dictionnary的学习记录

    Array: 数组,开辟连续存储的内存存储数据.Array获取数据的时间复杂度是O(1),但是要删除数据却是开销很大的,因为这需要重排数组中的所有数据 优点: 1.查询速度快,可以利用索引快速查询到对 ...

  8. Flink on yarn的配置及执行

    1. 写在前面 Flink被誉为第四代大数据计算引擎组件,即可以用作基于离线分布式计算,也可以应用于实时计算.Flink可以自己搭建集群模式已提供为庞大数据的计算.但在实际应用中.都是计算hdfs上的 ...

  9. MyBatis insert/delete/update 的返回值

    insert,返回值是:新插入行的主键(primary key):需要包含<selectKey>语句,才会返回主键,否则返回值为null. <insert id="inse ...

  10. FreeBSD 与中文

    $ setenv LC_ALL en_US.UTF- 然后用 locale 检查 en_US 不是重点,重点是 UTF-8 . 然后用 putty,原因是默认终端又没有中文字体...然后就能输入输出中 ...