不知道各位是否还记得在小学或者初中的时候,我们接触过一种语言叫做logo语言,这个语言可以画正方形,画三角形,画圆。而用Python画图形也有点类似logo语言的意思。

在画图之前,我们需要启动一个模块,turtple。然后在这个turtple下有一个属性叫pen,顾名思义就是画笔的意思。当输入完pen这个属性的时候,idle会打开一个叫Python Turtle Graphics的东西,在屏幕中间有一个三角的原点,这个点就有点类似logo的点,我们就是操作它来回移动留下痕迹。在idle里写完一句话,后面的Graphics就会画一道,然后再写一句话,再画一道。如果是直接的.py文件,那么就会按步骤的出现图形。import turtple

t=turtple.Pen() #设定这个t就是整个的变量,注意大写P

让原点前进50个像素:t.forward(50)

让原点左转90度:t.left(90)

让原点右转30度:t.right(30)

让原点抬起来:t.up() #这样使用forward就不会留下痕迹,因为笔在纸面上抬起来了嘛

让原点落下:t.down()

让原点是蓝色:t.color("blue")

需要使用蓝色填充图案:t.begin_fill() #需要和上面的语句搭配

填充图案停止:t.end_fill()

清空左右图案并且原点回到原始位置:t.reset()

让原点移动到(70,100)的位置:t.goto(70,100) #注意中间是逗号,默认整个图案是四象限的

了解了上面的几个简单语句,就可以画一个八边形,比如这个图:

这个图的程序就比较灵活了:import time

import turtle

#x边形内角和180*(x-3)

#函数:给出大小和顶点数绘制星星

#size:星星的核心是个等边多边形,这是该多边形的顶点到其中心的距离

#point:顶点数

def funcDrawStar(size, point):

t = turtle.Pen()

#调校坐标位置

t.up()

t.backward(200)

t.right(90)

t.forward(100)

t.left(90)

t.down()

#开始画图

t.color(1, 0, 0)

t.begin_fill()

for x in range(1, point * 2 + 1):

t.forward(size)

if x % 2 == 0:

t.left(120)

else:

t.right(180 * (point - 2) / point - 60)

t.end_fill()

#funcDrawStar(100, 6)

funcDrawStar(100, 9)

time.sleep(5)

上面都是一些简单的应用,但是要知道python也是可以画出来美妙的图形的,比如下图:

这个图形的代码如下(代码是转载的,感谢大牛分享,python 3.5亲测好使,而且整个过程非常美妙,强烈推荐各位感受一下。)from numpy import *

from random import random

import turtle

turtle.reset()

x = array([[.5],[.5]])

p = [0.85,0.92,0.99,1.00]

A1 = array([[.85, 0.04], [-0.04,.85]])

b1 = array([[0],[1.6]])

A2 = array([[0.20,-0.26], [0.23,0.22]])

b2 = array([[0],[1.6]])

A3 = array([[-0.15,0.28],[0.26,0.24]])

b3 = array([[0],[0.44]])

A4 = array([[0,0], [0,0.16]])

turtle.color("red")

cnt = 1

while True:

cnt += 1

if cnt == 2000:

break

r = random()

if r < p[0]:

x = dot(A1 , x) + b1

elif r < p[1]:

x = dot(A2 , x) + b2

elif r < p[2]:

x = dot(A3 , x) + b3

else:

x = dot(A4 , x)

#print x[1]

turtle.up()

turtle.goto(x[0][0] * 50,x[1][0] * 40 - 240)

turtle.down()

turtle.dot()

原文地址:http://chenx1242.blog.51cto.com/10430133/1775558

用python可以画的可爱的图形_用Python的Turtple画图形相关推荐

  1. python代码画小猪佩奇动画片全集_使用python画个小猪佩奇的示例代码

    本文给大家较详细的介绍了使用python画个小猪佩奇的示例代码,感兴趣的朋友一起看看吧 基本原理 选好画板大小,设置好画笔颜色.粗细,定位好位置,依次画鼻子.头.耳朵.眼睛.腮.嘴.身体.手脚.尾巴, ...

  2. python画一朵彩色玫瑰花图片_使用Python画一朵美丽的玫瑰花

    原标题:使用Python画一朵美丽的玫瑰花 turtle 是 python 中一个强大的绘制图像的库,可以用来绘制各种图像,使用起来很方便.看看本文使用Python的turtle库画一朵美丽的玫瑰花, ...

  3. python画图哆啦a梦大头贴_用python的turtle库画哆啦A梦大头贴

    原博文 2019-05-15 22:14 − 点击此处观看视频 源代码: 1 from turtle import * 2 speed(10) 3 pensize(3) 4 hideturtle() ...

  4. python七段数码管绘制单个数字_使用Python的turtle库实现七段数码管绘制

    七段数码管绘制: 七段数码管是由7段数码管拼接而成,每段有亮或不亮两种情况,改进的七段数码管还包括一个小数点位置. 七段数码管能形成2^7=128种状态,其中部分状态能够显示易于人们理解的数字或字母含 ...

  5. 下如何画出频率瀑布图_用maftools一行代码画出瀑布图

    昨天本科的一个师姐问我关于瀑布图的画法,想要画个瀑布图,问我有没有有什么工具可以画的,目标图如下 于是给师姐介绍了maftools这个R包,这个R包功能非常强大,可以做各种各样的图,今天就拿瀑布图为例 ...

  6. 基于python的数据爬取与分析_基于Python的网站数据爬取与分析的技术实现策略

    欧阳元东 摘要:Python为网页数据爬取和数据分析提供了很多工具包.基于Python的BeautifulSoup可以快速高效地爬取网站数据,Pandas工具能方便灵活地清洗分析数据,调用Python ...

  7. python实现二维码识别软件_用 Python 生成 识别二维码

    说到二维码大家一定不陌生,可以说现在二维码几乎渗透到了我们生活的各个角落,举例来说吧,我们到超市商场购物时扫描二维码付款,我们出行时乘坐公交地铁扫描二维码进站,我们到菜鸟驿站取件时扫描二维码取件,如果 ...

  8. python程序设计案例教程 张思民_《Python程序设计案例教程——从入门到机器学习(微课版)》.doc...

    1 - 1 - 作者:张思民 定价:49元 ISBN:9787302510147 <Python应用程序设计>课程教学大纲 一.课程基本信息 中文名称:Python应用程序设计 英文名称: ...

  9. 简笔画花边边框超简单_简单花边边框简笔画的高清图片

    边框的类型有很多种,其中,花边的边框最受人们喜欢,偶很多人喜欢画简单的花边边框简笔画,而且还是高清的.今天先和学习啦小编一起欣赏这些简单花边边框简笔画的高清图片,希望你会有所收获的. 简单花边边框简笔 ...

最新文章

  1. (转)谷歌公开dopamine
  2. JavaScript中的各种宽高以及位置总结
  3. 面向全球用户的Teams app之夏令时篇
  4. Scrapy 爬虫框架初体验二 —— 以一个新闻站点爬取为例
  5. 中国邮路问题邮递员问题欧拉路径图论C++
  6. 下载css-loader 安装及使用
  7. OpenCV读取一张图片,并将其转换为灰度图像显示
  8. python爬取高考各高校分数线查询_python 爬虫 爬取高考录取分数线 信息
  9. 热血传说复古传奇老显示服务器维护,《复古传奇之热血传说》新系列地图,新的装备即将出现...
  10. python菜鸟教程 | for 循环
  11. Pyton爬虫编程入门学习笔记(八)学习正则表达式
  12. encode decode 使用指南
  13. python中词云图是用来描述_Python如何实现中国地图词云图
  14. 2010年互联网风云人物
  15. 媒:克里米亚被俄军控制 48小时内决定走势
  16. fedora 16 X64 查看网速
  17. MicroPython学习--Nokia 5110+DHT11温湿度显示
  18. 第1课:郭盛华课程_如何安装VB编程软件及新建标准EXE程序
  19. RabbitMQ pika错误处理 delivery acknowledgement on channel 1 timed out
  20. Revit各版本下载地址

热门文章

  1. 刨根问底:linux中bash shell中SIGHUP和SIGTERM信号的处理
  2. I DID IT 推广二番 | ArcBlock 发布汇款转账应用 Demo
  3. [读论文] Electric Drive Technology Trends, Challenges, and Opportunities for Future Electric Vehicles
  4. 带饭省下的钱充3个月话费还嫌多!
  5. oracle获取当前年上一年时间,Oracle获取一周前,一个月前,一年前的日期
  6. 文件包含漏洞——实例
  7. 自媒体写好文案的技巧,这5个网站请收藏好!你想要的都在!
  8. 2022年高考全国甲卷英语作文保护海洋
  9. 芒课 —— 2464试题
  10. jQuery 性能优化