练习内容:打印空实心等腰三角形,空实心菱形,空实心梯形,空实心正六边形

简单空实心图形打印|Python练习系列[3]_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.com

def shape_print(n):#实心等腰三角形for y in range(n):for x in range(n-y-1):#先循环打印空格 形成一个倒直角三角形 range()中的值是形成的规律print(' ',end='')for z in range(y*2+1):#再循环打印X 形成一个等腰三角形 range()中的值是形成的规律print('X',end='')print()print()#间隔#空心等腰三角形for y in range(n):for x in range(n-y-1):#先循环打印空格 形成一个倒直角三角形 range()中的值是形成的规律print(' ',end='')for x in range(1):#再循环打印左腰边print('X',end='')for z in range(y*2-1):#再循环打印内部空格 形成内部的等腰三角形 range()中的值是形成的规律if y<n-1:print(' ',end='')for x in range(1):#再循环打印右腰边if 0<y<n-1:print('X',end='')if y==n-1:#再循环打印底边print('X'*y*2,end='')print()print()#实心菱形solid_diamond=['' for y in range(n*2-1)]#由于菱形上下两部分相同 用列表的方法for y in range(n):for x in range(n-y-1):#先循环打印空格 形成一个倒直角三角形solid_diamond[y]+=' 'for z in range(y*2+1):#再循环打印X 形成一个等腰三角形solid_diamond[y]+='X'solid_diamond[-y-1]=solid_diamond[y]#下半部分等于上半部分for y in range(n*2-1):#打印实心菱形print(solid_diamond[y])print()#空心菱形hollow_diamond=['' for y in range(n*2-1)]#由于菱形上下两部分相同 用列表的方法for y in range(n):for x in range(n-y-1):#先循环打印空格 形成一个倒直角三角形hollow_diamond[y]+=' 'for x in range(1):#再循环打印左腰边hollow_diamond[y]+='X'for z in range(y*2-1):#再循环打印内部空格 形成内部的等腰三角形if y<n-1:hollow_diamond[y]+=' 'for x in range(1):#再循环打印右腰边if 0<y<n-1:hollow_diamond[y]+='X'if y==n-1:#再循环打印底边hollow_diamond[y]+=' '*(y*2-1)+'X'hollow_diamond[-y-1]=hollow_diamond[y]#下半部分等于上半部分for y in range(n*2-1):#打印实心菱形print(hollow_diamond[y])print()#实心梯形solid_trapezium=[['X' for x in range(n*3)] for y in range(n)]#由于梯形近似矩形 用列表的方法for y in range(n):for x in range(n-y-1):#再循环替换成空格 形成梯形左边的倒直角三角形solid_trapezium[y][x]=' 'for x in range(n*2+y+1,n*3):#再循环替换成空格 形成梯形右边的倒直角三角形solid_trapezium[y][x]=' 'for x in range(n*3):#打印实心梯形print(solid_trapezium[y][x],end='')print()print()#空心梯形hollow_trapezium=[['X' for x in range(n*3)] for y in range(n)]#由于梯形近似矩形 用列表的方法for y in range(n):for x in range(n-y-1):#再循环替换成空格 形成梯形左边的倒直角三角形hollow_trapezium[y][x]=' 'for x in range(n*2+y+1,n*3):#再循环替换成空格 形成梯形右边的倒直角三角形hollow_trapezium[y][x]=' 'for x in range(n-y,n*2+y):#再循环替换成空格 形成梯形中间的空心if 0<y<n-1:hollow_trapezium[y][x]=' 'for x in range(n*3):#打印实心梯形print(hollow_trapezium[y][x],end='')print()print()#实心正六边形solid_regular_hexagon=[[' 'for x in range(2*(n-1)+(n+(n-1)))] for y in range(n+(n-1)*2)]#初始化六边形列表solid_rapezium_symmetry=[[]for x in range(n+(n-1)*2)]#初始化六边形对称列表for y in range(n*3-2):for x in range((n-1)*2,(n-1)*2+(n+(n-1)),2):#先循环形成六边形中间的矩形solid_regular_hexagon[y][x]='X'for x in range(n-1-int(y/2),(n-1-int(y/2))+(y+n)):#再循环形成六边形左边的梯形if y<(n-1)*2 and y%2==0:solid_regular_hexagon[x][y]='X'for y in range(n*3-2):#再循环复制六边形左边的梯形对称到右边solid_rapezium_symmetry[y].extend(solid_regular_hexagon[y][:(n-1)*2])#六边形对称列表添加六边形左边梯形solid_regular_hexagon[y].extend(solid_rapezium_symmetry[y][::-1])#将梯形对称翻转for x in range(4*(n-1)+(n+(n-1))):#打印实心正六边形print(solid_regular_hexagon[y][x],end='')print()print()#空心正六边形hollow_regular_hexagon=[[' 'for x in range(2*(n-1)+(n+(n-1)))] for y in range(n+(n-1)*2)]#初始化六边形列表hollow_rapezium_symmetry=[[]for x in range(n+(n-1)*2)]#初始化六边形对称列表for y in range(n*3-2):for x in range((n-1)*2,(n-1)*2+(n+(n-1)),2):#先循环形成六边形中间的空心矩形if y==0 or y==n*3-2-1:hollow_regular_hexagon[y][x]='X'for x in range(n-1-int(y/2),(n-1-int(y/2))+(y+n)):#再循环形成六边形左边的空心梯形if (y<(n-1)*2 and y%2==0) and (x==n-1-int(y/2) or x==(n-1-int(y/2))+(y+n)-1):hollow_regular_hexagon[x][y]='X'for y in range(n-1,n*2-1):#填充六边形最左边hollow_regular_hexagon[y][0]='X'for y in range(n*3-2):#再循环复制六边形左边的梯形对称到右边hollow_rapezium_symmetry[y].extend(hollow_regular_hexagon[y][:(n-1)*2])#六边形对称列表添加六边形左边梯形hollow_regular_hexagon[y].extend(hollow_rapezium_symmetry[y][::-1])#将梯形对称翻转for x in range(4*(n-1)+(n+(n-1))):#打印空心正六边形print(hollow_regular_hexagon[y][x],end='')print()print()
shape_print(5)

打印中间空了一个的菱形_简单空实心图形打印|Python练习系列[3]相关推荐

  1. python编写星号菱形中间是空的_简单空实心图形打印|Python练习系列[3]

    练习内容:打印空实心等腰三角形,空实心菱形,空实心梯形,空实心正六边形 简单空实心图形打印|Python练习系列[3]_哔哩哔哩 (゜-゜)つロ 干杯~-bilibili​www.bilibili.c ...

  2. excel打印预览在哪里_简单实用的excel打印技巧 建议收藏

    打印也是需要技巧滴,一些简单实用的excel打印技巧送给你! 1.每页都打印相同标题 在打印时,第一页有标题,第二页及以后没有标题,造成阅读不便,如何使每页都打印相同标题呢? [页面布局]→[打印标题 ...

  3. python热搜排行功能_简单几行代码用Python爬取微博的热搜榜

    简单几行代码用Python爬取微博的热搜榜 想要实时的看微博热搜 但是又不想去微博网站看!怎么办呢?其实很简单! 我们学了这个requests_html 这个库之后 就更加的简单了! 小编只用了短短的 ...

  4. python等腰梯形_简单空实心图形打印|Python练习系列[3]

    def shape_print(n): #实心等腰三角形 for y in range(n): for x in range(n-y-1):#先循环打印空格 形成一个倒直角三角形 range()中的值 ...

  5. java输入奇数得菱形_输入行数,打印菱形

    import java.util.Scanner; public class HelloWorld { public static void main(String[] args) { Scanner ...

  6. 空之轨迹sc存档_《空之轨迹》:一部优秀到让续作也无法超越的经典单机游戏!...

    如果说有什么单机游戏让小编想吹爆的话,那么毫无疑问是这部单机游戏--<空之轨迹>. <空之轨迹>是一款RPG游戏,分为三部,分别是空之轨迹FC.空之轨迹SC.空之轨迹3rd.主 ...

  7. 打印时选 平铺 原始大小_如何使用平铺打印制作自己的海报

    打印时选 平铺 原始大小 If the boring wall posters at Spencers aren't tickling your fancy and you'd rather have ...

  8. delphi dbgrideh 遍历每一个单元格_真香!我用Python 制作了一个迷宫游戏

    相信大家都玩过迷宫的游戏,对于简单的迷宫,我们可以一眼就看出通路,但是对于复杂的迷宫,可能要仔细寻找好久,甚至耗费数天,然后可能还要分别从入口和出口两头寻找才能找的到通路,甚至也可能找不到通路. 虽然 ...

  9. python一个月收入_我月薪5000,靠Python搞副业月入3万

    原标题:我月薪5000,靠Python搞副业月入3万 被压垮的打工人,你还好吗? 房贷车贷,上老下小,日常开销, 但你的收入有多少??? 所以你不敢生病,甚至不敢回家! 就为了每个月那么点死工资,还得 ...

最新文章

  1. JVM学习--(一)基本原理
  2. 如何使用Eclipse内存分析工具定位内存泄露
  3. ARM平台下独占访问指令LDREX和STREX的原理与使用详解
  4. 第十四节:ES6的 Iterator 遍历器到底是什么?
  5. linux php zend load,在Linux系统中为PHP5.3安装Zend Guard Loader
  6. 减少HTTP请求之将图片转成二进制并生成Base64编码,可以在网页中通过url查看图片(大型网站优化技术)...
  7. 【学习笔记】用Mac自学虚幻4
  8. 工作分解结构(WBS)
  9. RobotFramework相关
  10. 王者荣耀服务器什么时候维护结束,王者荣耀维护更新到几点 王者荣耀今天维护多久 新赛季几点维护完?...
  11. u盘插电脑上不显示怎么办?数据恢复还有希望吗
  12. Muli3D 2 matMatrix44RotationQuaternion 函数 (四元数转矩阵)
  13. Day50 python 多表操作
  14. Raspberry PI 编译WLan驱动模块, 并配置登录WIFI
  15. php判断手机还是电脑
  16. 海思HI3518E视频处理基础概念《三》----- 视频处理子系统VPSS
  17. Mapbox使用之sprite(图标符号)
  18. 史玉柱经典语录(转)
  19. 吃苹果小游戏(Python)
  20. python画四个相切的圆_如何用python绘制四分之一圆曲线

热门文章

  1. python经典教程游戏_使用pygame制作经典小游戏:五子棋
  2. sql 从ip列表中查询ip段_IP地址段查询深度优化案例
  3. canoe知识点查阅
  4. C++新特性探究(18.2):C++11 unique_ptr智能指针详解
  5. 简述使jdbc连接mysql数据库,关于JDBC的六个步骤
  6. spring 两次进入拦截器_spring mvc 拦截器一次请求拦截两次?
  7. 为什么吃红薯容易放屁
  8. slurm安装配置_安装Slurm_鲲鹏高性能计算解决方案_安装指南_Slurm 18.08.7 安装指南_Slurm的安装配置_华为云...
  9. C语言丨栈(二):链栈
  10. java怎么预加载字典值,有选择地显示预加载内容提高网站的性能