此次练习用到了python中的turtle库,以及math库中的pow幂运算和sqrt开方运算。
整体逻辑:
先画出多个同心,逐级变小的八边形;
再画出八条辐射线。
为了保证同心:
每画完一个八边形,都使用goto(0, 0)回到原点位置;
改变画笔起始点,偏移量为半边长加上由边长组成的等腰直角三角形一条腰的长度和。

代码实现:

import turtle
from math import sqrt,pow# 起始最外层八边形边长
side = 50
# 偏移画布原点(0, 0)的距离,用来改变画笔起始点,保证图形居中
offset = sqrt(pow(side,2)/2)+(side/2)turtle.pensize(2)
turtle.pencolor('red')
# 改变speed参数(0,10)用来查看画图时的变化,便于调试代码
turtle.speed(10)# 循环画11个八边形
for n in range(11):
# 抬起画笔后改变画笔起始点和行进方向turtle.penup()turtle.forward(offset)turtle.left(90)turtle.pendown()
# 起始点为八边形边的一半处,行进一半就到了第一个顶点位置turtle.forward(side/2)
# 循环画8条边for i in range(8):turtle.left(45)turtle.forward(side)
# 每次画完1个八边形后恢复到原点和行进方向turtle.penup()turtle.goto(0,0)turtle.right(90)turtle.pendown()
# 每次画完1个八边形,都改变边长和偏移量,逐级减小side -=4offset = sqrt(pow(side,2)/2)+(side/2)# 循环画8条辐射线
turtle.pencolor('green')
turtle.left(22.5)
for j in range(8):turtle.left(45)turtle.forward(100)
# 不改变方向后退到起点turtle.backward(100)# 隐藏画笔并结束
turtle.hideturtle()
turtle.done()

Python 用turtle画多个八边形组成的蜘蛛网相关推荐

  1. 用python 画炫酷的图并讲解-使用Python的turtle画炫酷图形

    原标题:使用Python的turtle画炫酷图形 例子一: import turtle t = turtle.Pen() turtle.bgcolor("black") sides ...

  2. python中用turtle画爱心表白

    python中用turtle画爱心表白 运行后的效果图: 下面的代码是在python3.7写的,代码有点长,但却语法简单易懂 代码如下: import turtle str = input('请输入表 ...

  3. python用turtle画月亮_使用Python的turtle画小猪乔治和哆啦 A 梦

    本人是Python新人小白,欢迎各位大佬指正,本文介绍的是用Python的turtle画一只小猪乔治. 还有本人画画基础超级差= =没天赋,画参考度娘上的一个图片画的. 先上总代码,然后说说我写的思路 ...

  4. python画椭圆turtle_python之turtle画蚊香,python用turtle画圆弧,原理:利用turtl

    python之turtle画蚊香,python用turtle画圆弧,原理:利用turtl 原理:利用turtle绘制圆形,并使圆半径逐步增加 代码如下:import turtleturtle.pens ...

  5. python画小猪乔治动画片全集_使用Python的turtle画小猪乔治和哆啦 A 梦!附源码!...

    本人是Python新人小白,欢迎各位大佬指正,本文介绍的是用Python的turtle画一只小猪乔治. 还有本人画画基础超级差= =没天赋,画参考度娘上的一个图片画的. 先上总代码,然后说说我写的思路 ...

  6. 用Python的turtle画一只小猪乔治【刚学python两天,纪念一下】

    本人是新人小白,欢迎各位大佬指正,本文介绍的是用Python的turtle画一只小猪乔治[手动比心 by zwx lvmm] [女朋友很喜欢小猪乔治,我在学习python,她说,那你会画小猪乔治了吗? ...

  7. 用Python的turtle画出beautiful四扇风车图

    一.简单了解turtle 1.turtle是什么? 这里引用Python官方文档的片段: 海龟绘图 海龟绘图很适合用来引导孩子学习编程. 最初来自于 Wally Feurzeig, Seymour P ...

  8. python之Turtle 画星星和樱花

    python之Turtle 画星星和樱花 1. 樱花 1.1 基础版 1.1.1 基础版效果图 1.1.2 主要算法 1.1.3 完整代码 1.2 升级版 1.2.1 效果图 1.2.2 主要算法 1 ...

  9. python用turtle画出给定图片的图像

    python用turtle画出给定图片的图像.校徽等复杂图像都可以 需要: 1.要画的图片 2.安装好cv和turtle 打开python文件,把想画的图片放到和py文件同目录,代码中默认图片名字为1 ...

最新文章

  1. win7上Docker使用
  2. mysql本地可以访问 网络不能访问
  3. mina android 服务器,MINA框架----------android客户端与服务器端
  4. 用神经网络分类矩阵和矩阵的转置
  5. ML之预测:玩转2018世界杯—采用机器学习预测小组赛、十六比赛、四决赛、半决赛、决赛以及世界杯总冠军的各个队伍
  6. java for循环遍历解释,三种for循环遍历
  7. iTOP-4418/6818开发板-QtE4.7WIFI_MT6620热点
  8. 字符数字转换 atoi 与 strtol
  9. 毕设中涉及层次分析法的EXCEL处理步骤
  10. 【信息系统项目管理师】12项目合同管理
  11. lcd像素点密度_常见液晶显示分辨率对应像素密度
  12. uniapp手机定位或者uniapp结合原生安卓定位
  13. Android以太网卡配置启动流程和双网卡同时支持的实现
  14. 图数据库入门教程-深入学习Gremlin(1):图基本概念与操作
  15. jq js css3 实现瀑布流
  16. 史上最全CCA Spark and Hadoop Developer (CCA175) 开发者认证考试信息
  17. cocos2dx学习之路(一)———windows10下cocos2dx环境配置
  18. MATLAB利用deal函数进行赋值
  19. 在matlab上实现遗传算法解决TSP旅行者问题
  20. opencv自适应尺寸模板匹配

热门文章

  1. 磁珠 符号_(整理)贴片磁珠规格.
  2. PTA:7-6 奇偶数处理
  3. AnySDK吉祥物征名活动开始啦!
  4. ListView中如何优化图片
  5. java的h2是什么_什么是H2数据库
  6. 【Python检测脚本】你知道朋友屏蔽你吗?你知道屏蔽别人的下场吗?(拉黑统统拉黑)
  7. matlab fgetc,C语言fgetc和fputc函数用法详解(以字符形式读写文件)
  8. 2022年中职网络空间安全国赛竞赛题解析仅代表自己的建议——2022年中职网络安全国赛竞赛试题2解析
  9. android蓝牙查看电池容量_Android查看电池电量的方法(基于BroadcastReceiver)
  10. PE系统与U盘启动工具的推荐