python等腰梯形_简单空实心图形打印|Python练习系列[3]
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
print(' ',end='')
for x in range(1):#再循环打印右腰边
if 0
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
hollow_diamond[y]+=' '
for x in range(1):#再循环打印右腰边
if 0
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
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等腰梯形_简单空实心图形打印|Python练习系列[3]相关推荐
- python编写星号菱形中间是空的_简单空实心图形打印|Python练习系列[3]
练习内容:打印空实心等腰三角形,空实心菱形,空实心梯形,空实心正六边形 简单空实心图形打印|Python练习系列[3]_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.c ...
- 打印中间空了一个的菱形_简单空实心图形打印|Python练习系列[3]
练习内容:打印空实心等腰三角形,空实心菱形,空实心梯形,空实心正六边形 简单空实心图形打印|Python练习系列[3]_哔哩哔哩 (゜-゜)つロ 干杯~-bilibiliwww.bilibili.c ...
- python打印圆形_任意空实心圆形打印|Python练习系列[8]
练习内容:空实心圆形 勾股定理 完整代码和注释如下 def circle(r): #空心圆 hollow_quarter_circle_rd=[[' 'for x in range(r*2+1)]fo ...
- crossin的编程教室python入门_简单三步,用 Python 发邮件
0. 前言 发送电子邮件是个很常见的开发需求.比如你写了个监控天气的脚本,发现第二天要下雨,或者网站上关注的某个商品降价了,就可以发个邮件到邮箱来提醒自己. 使用 Python 脚本发送邮件并不复杂. ...
- python搭建_简单_交易系统【转载】
python搭建_简单_交易系统[转载] 构建account_class 类 构建所需函数 构建最大回撤.收益率.回测函数 构建银行翻倍.选股函数 回测实证分析 (转自 https://www.joi ...
- 老滚5初始化python失败_五分钟学会怎么用python做一个简单的贪吃蛇
Pygame 是一组用来开发游戏软件的 Python 程序模块,基于 SDL 库的基础上开发.我们今天将利用它来制作一款大家基本都玩过的小游戏--贪吃蛇. 一.需要导入的包 import pygame ...
- excel打印预览在哪里_简单实用的excel打印技巧 建议收藏
打印也是需要技巧滴,一些简单实用的excel打印技巧送给你! 1.每页都打印相同标题 在打印时,第一页有标题,第二页及以后没有标题,造成阅读不便,如何使每页都打印相同标题呢? [页面布局]→[打印标题 ...
- python热搜排行功能_简单几行代码用Python爬取微博的热搜榜
简单几行代码用Python爬取微博的热搜榜 想要实时的看微博热搜 但是又不想去微博网站看!怎么办呢?其实很简单! 我们学了这个requests_html 这个库之后 就更加的简单了! 小编只用了短短的 ...
- 量化投资与python语言_在量化投资领域,为什么Python如此受欢迎?
说起Web领域 你立马会想到JavaScript语言,它在Web领域不可撼动:Python也已经在金融量化投资领域占据了重要位置,从各个业务链条都能找到相应的框架实现. 在量化投资(证券和比特币)开源 ...
最新文章
- python gui选择_Python之GUI的最终选择(Tkinter)
- Hadoop机架感知与balancer
- R语言双因素方差分析
- 左牵Uber右联大众,黄教主带领320家车企一统自动驾驶江湖
- Vaughn Vernon谈当今软件开发所面临的挑战
- Python语言pip升级python-augeas失败之解决办法
- Spire.XLS试用手记
- linux mv 环境变量,linux环境变量 cp mv 以及文档查看的几个命令
- ERROR: Could not read unit serial number!
- JavaScript程序员必备的5个debug技巧
- Thinkpad T61/R61/X61安装XP驱动流程
- MySQL终端(Terminal)命令基本操作(转)
- 网页导出的excel无法计算机,网页上不能导出excel表格数据-如何将网页表格导出到excel...
- Web前端:前12个易于Web开发的前端开发工具
- 安装西门子博图一直重启_博图软件常见错误解决方法
- @修改用户(user)信息
- yum是干什么的_linux下的yum命令详解
- 【许晓笛】 EOS智能合约案例解析(1) 1
- 循环-05. 兔子繁衍问题
- 扶蕾wlt~学习计划——MATLATB
热门文章
- python百钱买百鸡问题答案_PHP/Python---百钱百鸡简单实现及优化
- 伸缩杆怎么缩回去图解_没有阳台怎么晾衣服?这10个神器,让家里衣物晾晒更轻松方便...
- 【linux】设置镜像源
- VS2013中CUDA的配置
- Dom4j完整教程~Document对象相关
- 软件系统架构~视点和视图
- 自定义ClassLoader
- echarts柱形图x轴y轴互换_数控机床在加工零件时,突然出现X、Y、Z轴失控?如何处理...
- java 配置写成表达式_Java的正则表达式之小结
- 顶级隐写术,破坏一切解释器