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中使用Flask、MongoDB搭建简易图片服务器
Feb 04 Python
Python统计日志中每个IP出现次数的方法
Jul 06 Python
Python内置函数reversed()用法分析
Mar 20 Python
python 3.6.2 安装配置方法图文教程
Sep 18 Python
python pandas读取csv后,获取列标签的方法
Nov 12 Python
python-opencv 将连续图片写成视频格式的方法
Jan 08 Python
浅谈Python中eval的强大与危害
Mar 13 Python
使用python爬取抖音视频列表信息
Jul 15 Python
解决python 3 urllib 没有 urlencode 属性的问题
Aug 22 Python
Python环境管理virtualenv&amp;virtualenvwrapper的配置详解
Jul 01 Python
基于Python爬取京东双十一商品价格曲线
Oct 23 Python
Pytorch实现图像识别之数字识别(附详细注释)
May 11 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引用(&amp;)
2014/09/04 PHP
递归实现php数组转xml的代码分享
2015/05/14 PHP
javascript 隐藏/显示指定的区域附HTML元素【legend】用法
2010/03/05 Javascript
jQuery中大家不太了解的几个方法
2015/03/04 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
javascript小数精度丢失的完美解决方法
2016/05/31 Javascript
jQuery控制元素隐藏和显示
2017/03/03 Javascript
详解Angular 中 ngOnInit 和 constructor 使用场景
2017/06/22 Javascript
Nodejs中使用phantom将html转为pdf或图片格式的方法
2017/09/18 NodeJs
element ui里dialog关闭后清除验证条件方法
2018/02/26 Javascript
解决layer弹层遮罩挡住窗体的问题
2018/08/17 Javascript
微信小程序dom操作的替代思路实例分析
2018/12/06 Javascript
vue中使用vue-cli接入融云实现即时通信
2019/04/19 Javascript
iview实现图片上传功能
2020/06/29 Javascript
vue使用echarts图表自适应的几种解决方案
2020/12/04 Vue.js
[00:57]林俊杰助阵DOTA2亚洲邀请赛
2015/01/28 DOTA
Python读取图片EXIF信息类库介绍和使用实例
2014/07/10 Python
python继承和抽象类的实现方法
2015/01/14 Python
Python挑选文件夹里宽大于300图片的方法
2015/03/05 Python
Python错误提示:[Errno 24] Too many open files的分析与解决
2017/02/16 Python
python下10个简单实例代码
2017/11/15 Python
Python使用itertools模块实现排列组合功能示例
2018/07/02 Python
python解析json串与正则匹配对比方法
2018/12/20 Python
用Cython加速Python到“起飞”(推荐)
2019/08/01 Python
tensorboard 可以显示graph,却不能显示scalar的解决方式
2020/02/15 Python
Pyqt助手安装PyQt5帮助文档过程图解
2020/11/20 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
python制作微博图片爬取工具
2021/01/16 Python
英国最大的正宗复古足球衫制造商和零售商:TOFFS
2018/06/21 全球购物
幼儿教师个人求职信范文
2013/09/21 职场文书
应届毕业生自荐信
2014/05/28 职场文书
财务整改报告范文
2014/11/05 职场文书
导游词之杭州岳王庙
2019/11/13 职场文书
读《人生的智慧》有感:闲暇是人生的精华
2019/12/25 职场文书
Vue3中的Refs和Ref详情
2021/11/11 Vue.js
Nginx流量拷贝ngx_http_mirror_module模块使用方法详解
2022/04/07 Servers