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 不同对象比较大小示例探讨
Aug 21 Python
python僵尸进程产生的原因
Jul 21 Python
浅谈python中的正则表达式(re模块)
Oct 17 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
Jun 10 Python
python basemap 画出经纬度并标定的实例
Jul 09 Python
使用IDLE的Python shell窗口实例详解
Nov 19 Python
Python中关于logging模块的学习笔记
Jun 03 Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 Python
Python用K-means聚类算法进行客户分群的实现
Aug 23 Python
使用Python操作MySQL的小技巧
Sep 10 Python
分享一枚pycharm激活码适用所有pycharm版本我的pycharm2020.2.3激活成功
Nov 20 Python
python基础入门之字典和集合
Jun 13 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 数据结构 算法描述 冒泡排序 bubble sort
2011/07/10 PHP
实现获取http内容的php函数分享
2014/02/16 PHP
php 实现301重定向跳转实例代码
2016/07/18 PHP
php array_udiff_assoc 计算两个数组的差集实例
2016/11/12 PHP
!DOCTYPE声明对JavaScript的影响分析
2010/04/12 Javascript
Javascript下判断是否为闰年的Datetime包
2010/10/26 Javascript
基于JQuery的Select选择框的华丽变身
2011/08/23 Javascript
js查错流程归纳
2012/05/04 Javascript
Javascript浅谈之引用类型
2013/12/18 Javascript
javascript实现在线客服效果
2015/07/15 Javascript
javascript实现3D变换的立体圆圈实例
2015/08/06 Javascript
全面解析Bootstrap表单使用方法(表单控件)
2015/11/24 Javascript
JavaScript的变量声明提升问题浅析(Hoisting)
2016/11/30 Javascript
vue插槽slot的简单理解与用法实例分析
2020/03/14 Javascript
vue跳转页面的几种方法(推荐)
2020/03/26 Javascript
微信小程序之高德地图多点路线规划过程示例详解
2021/01/18 Javascript
Python判断变量是否已经定义的方法
2014/08/18 Python
python获取本机mac地址和ip地址的方法
2015/04/29 Python
Python 中 Meta Classes详解
2016/02/13 Python
python去除文件中空格、Tab及回车的方法
2016/04/12 Python
python调用百度语音REST API
2018/08/30 Python
pymongo中聚合查询的使用方法
2019/03/22 Python
对python特殊函数 __call__()的使用详解
2019/07/02 Python
Python中的类与类型示例详解
2019/07/10 Python
Python爬虫如何破解JS加密的Cookie
2020/11/19 Python
Python字节单位转换(将字节转换为K M G T)
2021/03/02 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
美国最大的城市服装和运动鞋零售商:Jimmy Jazz
2016/11/19 全球购物
个人求职简历的自我评价
2013/10/19 职场文书
幼儿园教师自我鉴定
2014/03/20 职场文书
2014年全国爱牙日宣传活动方案
2014/09/21 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
学生病假条范文
2015/08/17 职场文书
班主任远程培训研修日志
2015/11/13 职场文书
python解决12306登录验证码的实现
2021/04/18 Python
死磕 java同步系列之synchronized解析
2021/06/28 Java/Android