Python利用for循环打印空心矩形,直角三角形,正三角形

2 篇文章 0 订阅
1 篇文章 0 订阅

打印直角三角形

import time
# 直角三角形
#控制行
for i in range(5):
 #控制列
   for j in range(i+1):
   #打印*,print()默认打印完一次后换行,end=''可以控制print()不换行
        print('* ',end='')
        time.sleep(1)
    #控制打印完一行之后换行,因为行是一层循环列是二层循环,列中打印不换行 ,如果不在二层循环换行的话最终打印结果只有一行
    print()

在这里插入图片描述

  • range()函数可以创建一个整数列表,range(5),代表[0,1,2,3,4],从0开始,左侧包含右侧不包含。
  • for i in range(5) 可以控制i在0-4之间做一个循环
  • 第一层循环控制行,第二层循环控制列
  • 直角三角形的规律是第一行只打印一列打印1个*,第二行打印2列打印2个*,以此类推到第5行打印5列打印5个*
  • 按照range()的规则行号i的值为0-4共5行,每一行所打印的列数应该与行号有关,range(i+1)可控制列j的值按照行号的不同随时变化
    • 第1行i=0, j=range(1),j 的值只有0
    • 第2行i=1,j=range(2),j的值为[0,1],列号循环2次即有两列

打印空心矩形

#空心矩形
#控制行
for i in range(5):
#控制列
   for j in range(5):
   #控制矩形边框,只打印第1行、第5行、第1列、第5列
       if i == 0 or i==4 or j == 0 or j == 4:
           print('*',end=' ')
       else:
       #控制空心的部分
           print('-',end=' ')
   #控制每行打印完成后换行
   print()

在这里插入图片描述在这里插入图片描述

  • 对代码运行逻辑不清晰的小技巧
    • 如果初学者不明白程序的执行方式可以在代码中导入time包,利用sleep函数控制代码执行的速度,sleep(1)代表休眠一秒后执行下一条代码
    • 将不同循环控制打印的符号设置成不同的符号,方便初学者理解代码执行逻辑

打印正三角形

#正三角形
import time
#控制行
for i in range(5):
#控制列,左侧空白的部分,控制正三角形行的开始位置
    for j in range(5-i):
        print(end='-')
        time.sleep(1)
     #控制列,正三角形的部分
    for k in range(i+1):
        print('* ',end='')
        time.sleep(1)
    #打印完一行后换行
    print()

在这里插入图片描述在这里插入图片描述

  • 当我们需要打印的图形不好直接控制起始位置时,可以利用多个图形结合的方式达到目的
  • 正三角形的形状我们不好控制行的起始位置,但是据观察正三角形的左侧只好一个倒着的直角三角形
  • 代码的执行顺序如下,第一步先执行行的循环,第二步执行左侧填充的到直角三角形的循环,第三步执行正三角形的循环
    • 这段代码中利用不同的符号及sleep函数可以控制显示及执行速度,以便初学者看清代码运行逻辑
      在这里插入图片描述
  • 8
    点赞
  • 53
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值