Python 使用双重循环打印图形菱形操作


Posted in Python onAugust 09, 2020

如下所示:

Python 使用双重循环打印图形菱形操作

a = int(input("请输入菱形行数:"))
m = a #空格
d = a #倒三角
for i in range(1, a + 1): # 先打印正三角
 print(" " * (m - 1), "*" * (2 * i - 1)) #2个*参数: 第一个是:空格 第二个是: *根据规律组成
 m -= 1
 if i == a: # 临界点,开始打印倒三角
 for y in range(1, a):
  print(" " * y, "*" * (2*d-3)) #2个*参数: 第一个是:空格 第二个是: *根据规律组成
  d -= 1 #设置-1

Python 使用双重循环打印图形菱形操作

a=4 #指定行数
b=a #空格
c=a #倒三角
for i in range(1,a+1):
 print(" " * (b - 1), "%d" %b * (2 * i - 1))
 b-=1
 if i==a: # 临界点,开始打印倒三角
 for y in range(1,a):
  print(" " * y, "%d" %(y+1) * (2 * c - 3))
  c-=1

Python 使用双重循环打印图形菱形操作

a = int(input("请输入菱形行数:"))
m = a #空格
d = a #倒三角
print(" " * (a - 1), "*") #第一个是:空格, 第二个是:打印一个*
for i in range(2, a + 1): # 先打印正三角
 print(" " * (m - 1) + "*" + " " * (2 * i - 3) + "*") #1个*参数: 第一个是:空格和*根据规律组成
 m -= 1
 if i == a: # 临界点,开始打印倒三角
 for y in range(2, a):
  print(" " * y + "*" + " " * (2 * d - 5) + "*") #1个*参数: 第一个是:空格和*根据规律组成
  d -= 1 #设置-1
 print(" "*a+"*") #打印最后一个*

补充知识:使用Python打印一些图形,主要是找到循环规律

打印菱形

Python 使用双重循环打印图形菱形操作

a = int(input())
e = a//2
for i in range(e,-1,-1):
  print(' '*i,'*'*(a-2*i), ' '*i)
for i in range(1,e+1):
  print(' '*i,'*'*(a-2*i), ' '*i)

改进版本,找到规律,使用abs函数

a = int(input('>>>'))
e = a // 2
for i in range(-e, e+1):
  j = abs(i)
  print(' '*j + '*'*(a-j*2) + ' '*j)

打印对顶三角

Python 使用双重循环打印图形菱形操作

a = int(input('>>>'))
e = a//2
for i in range(e+1):
  print(' '*i, (a - i*2)*'*', ' '*i, sep='')
for i in range(1, e+1):
  print(' ' * (e-i), (i * 2 + 1) * '*', ' ' * (e-i), sep='')

倒三角的打印,可以不用考虑*后面的空格,其实可以简化

a = int(input('>>>'))
e = a // 2
for i in range(-e, e+1):
  j = abs(i)
  print(' ' * (e-j) + '*' * (j * 2 + 1))

打印一道闪电:

Python 使用双重循环打印图形菱形操作

按照最笨的思路分三部分打印

a = int(input('>>>'))
e = a // 2
for i in range(-e, 0):
  print(' ' * abs(i) + '*' * (a - e - abs(i)))
print('*' * a)
for i in range(1, a-e):
  print(' ' * e + '*' * (a - e - i))

稍作改进

a = int(input('>>>'))
e = a // 2
for i in range(-e, a-e):
  if i < 0:
    print(' ' * abs(i) + '*'*(a - e - abs(i)))
  elif i > 0:
    print(' ' * e + '*' * (a - e - i))
  else:
    print('*' * a)

打印正方形

for i in range(n):
  sepTop += '\t*'
  sepMid += '\t'
else:
  sepMid += '*'
  print(sepTop)
 
for i in range(n-1):
  print('\n')
  print(sepMid)
else:
  print('\n')
  print(sepTop)
 
print('=====================================')
e = -n//2
for i in range(e,n+e):
  if i == e or i == n+e-1:
    print('*'*n)
  else:
    print('*'+' '*(n-2)+'*')
print('=====================================')

以上这篇Python 使用双重循环打印图形菱形操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python的Django框架下管理站点的基本方法
Jul 17 Python
Python使用urllib2模块抓取HTML页面资源的实例分享
May 03 Python
解决PyCharm中光标变粗的问题
Aug 05 Python
python+mongodb数据抓取详细介绍
Oct 25 Python
python实现n个数中选出m个数的方法
Nov 13 Python
python调用百度地图WEB服务API获取地点对应坐标值
Jan 16 Python
解决Python 使用h5py加载文件,看不到keys()的问题
Feb 08 Python
Python匿名函数/排序函数/过滤函数/映射函数/递归/二分法
Jun 05 Python
python实现读取excel文件中所有sheet操作示例
Aug 09 Python
详谈tensorflow gfile文件的用法
Feb 05 Python
使用Python FastAPI构建Web服务的实现
Jun 08 Python
Python利用命名空间解析XML文档
Aug 10 Python
Python 添加文件注释和函数注释操作
Aug 09 #Python
vscode配置anaconda3的方法步骤
Aug 08 #Python
Pycharm调试程序技巧小结
Aug 08 #Python
Python 在局部变量域中执行代码
Aug 07 #Python
Python如何创建装饰器时保留函数元信息
Aug 07 #Python
python的launcher用法知识点总结
Aug 07 #Python
详解PyQt5中textBrowser显示print语句输出的简单方法
Aug 07 #Python
You might like
PHP中获取内网用户MAC地址(WINDOWS/linux)的实现代码
2011/08/11 PHP
利用PHP+JS实现搜索自动提示(实例)
2013/06/09 PHP
php获取网站百度快照日期的方法
2015/07/29 PHP
PHP提高编程效率的20个要点
2015/09/23 PHP
php mailer类调用远程SMTP服务器发送邮件实现方法
2016/03/04 PHP
Ajax实现对静态页面的文章访问统计功能示例
2016/10/10 PHP
laravel框架中路由设置,路由参数和路由命名实例分析
2019/11/23 PHP
为指定元素增加样式的js代码
2009/12/09 Javascript
jquery 年会抽奖程序
2011/12/22 Javascript
用JQuery在网页中实现分隔条功能的代码
2012/08/09 Javascript
JS获取URL中参数值(QueryString)的4种方法分享
2014/04/12 Javascript
浅谈JQuery+ajax+jsonp 跨域访问
2016/06/25 Javascript
JS+CSS3模拟溢出滚动效果
2016/08/12 Javascript
js实现复选框的全选和取消全选效果
2017/01/03 Javascript
基于vue-video-player自定义播放器的方法
2018/03/21 Javascript
Vue 使用中的小技巧
2018/04/26 Javascript
原生JS实现获取及修改CSS样式的方法
2018/09/04 Javascript
nodejs遍历文件夹下并操作HTML/CSS/JS/PNG/JPG的方法
2018/11/01 NodeJs
koa源码中promise的解读
2018/11/13 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
vue实现数据控制视图的原理解析
2020/01/07 Javascript
Django1.7+python 2.78+pycharm配置mysql数据库教程
2014/11/18 Python
Python的GUI框架PySide的安装配置教程
2016/02/16 Python
Python常见工厂函数用法示例
2018/03/21 Python
python实现狄克斯特拉算法
2019/01/17 Python
Python Tkinter模块 GUI 可视化实例
2019/11/20 Python
python 控制台单行刷新,多行刷新实例
2020/02/19 Python
python编写俄罗斯方块
2020/03/13 Python
pycharm第三方库安装失败的问题及解决经验分享
2020/05/09 Python
Python dict的常用方法示例代码
2020/06/23 Python
python+selenium实现12306模拟登录的步骤
2021/01/21 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
环境保护与污染治理求职信
2014/07/16 职场文书
甜品店创业计划书
2014/08/14 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
Golang生成Excel文档的方法步骤
2021/06/09 Golang