妙不可言——用 Python 输出各种优雅的矩阵

任务1:打印规则的矩形

"""
功能:打印规则的矩形
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))
col = int(input('列数:'))

for i in range(row):
    for j in range(col):
        print('*', end="")
    print()

输出结果:

行数:10
列数:20
********************
********************
********************
********************
********************
********************
********************
********************
********************
********************

任务2:打印字符平行四边形

"""
功能:打印字符平行四边形
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))
col = int(input('列数:'))

for i in range(row):
    for j in range(row - i - 1):
        print(" ", end="")
    for j in range(col):
        print('*', end="")
    print()

for i in range(row):
    for j in range(i):
        print(" ", end="")
    for j in range(col):
        print('*', end="")
    print()

输出结果:

行数:10
列数:20
         ********************
        ********************
       ********************
      ********************
     ********************
    ********************
   ********************
  ********************
 ********************
********************
********************
 ********************
  ********************
   ********************
    ********************
     ********************
      ********************
       ********************
        ********************
         ********************

可以采用字符串的乘法运算,可以不要内循环

"""
功能:打印字符平行四边形
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))
col = int(input('列数:'))

for i in range(row):
    print(" " * (row - i - 1), end="")
    print('*' * col, end="")
    print()

for i in range(row):
    print(" " * i, end="")
    print('*' * col, end="")
    print()

输出结果:

行数:10
列数:20
         ********************
        ********************
       ********************
      ********************
     ********************
    ********************
   ********************
  ********************
 ********************
********************
********************
 ********************
  ********************
   ********************
    ********************
     ********************
      ********************
       ********************
        ********************
         ********************

任务3:打印字符直角三角形

"""
功能:打印字符直角三角形
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))

for i in range(row):
    print('*' * (i + 1), end="")
    print()

for i in range(row):
    print('*' * (row - i), end="")
    print(" " * i, end="")
    print()

for i in range(row):
    print(' ' * (row - i - 1), end="")
    print("*" * (i + 1), end="")
    print()

for i in range(row):
    print(' ' * i, end="")
    print("*" * (row - i), end="")
    print()

输出结果:

行数:10
*
**
***
****
*****
******
*******
********
*********
**********
**********
********* 
********  
*******   
******    
*****     
****      
***       
**        
*         
         *
        **
       ***
      ****
     *****
    ******
   *******
  ********
 *********
**********
**********
 *********
  ********
   *******
    ******
     *****
      ****
       ***
        **
         *

任务4:打印字符实心钻石

  • 实心钻石,其实由一个正立的等腰三角形和一个倒立的等腰三角形组合而成,也就是一个菱形。
"""
功能:打印字符实心钻石
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))

for i in range(0, row + 1, 2):
    print(" " * (round((row - i) / 2)), end="")
    print("*" * (i + 1), end="")
    print()

for i in range(0, row + 1, 2):
    print(" " * round(i / 2), end="")
    print("*" * (row - i + 1), end="")
    print()

输出结果:

行数:30
               *
              ***
             *****
            *******
           *********
          ***********
         *************
        ***************
       *****************
      *******************
     *********************
    ***********************
   *************************
  ***************************
 *****************************
*******************************
*******************************
 *****************************
  ***************************
   *************************
    ***********************
     *********************
      *******************
       *****************
        ***************
         *************
          ***********
           *********
            *******
             *****
              ***
               *

任务5:打印字符空心钻石

"""
功能:打印字符空心钻石
作者:Fulling
日期:2021年11月28日
"""

row = int(input('行数:'))

for i in range(0, row):
    print('  ' * (row - i - 1), end="")
    print('* ', end="")
    print('  ' * (i * 2 - 1), end="")
    if i != 0:
        print('*', end="")
    print()

for i in range(1, row):
    print("  " * i, end="")
    print('* ', end="")
    print("  " * (round((row - i) * 2) - 3), end="")
    if i != (row - 1):
        print('*', end="")
    print()

输出结果:

行数:10
                  * 
                *   *
              *       *
            *           *
          *               *
        *                   *
      *                       *
    *                           *
  *                               *
*                                   *
  *                               *
    *                           *
      *                       *
        *                   *
          *               *
            *           *
              *       *
                *   *
                  * 
  • 5
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

iFulling

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值