为了账号安全,请及时绑定邮箱和手机立即绑定

如何在python中打印两个粘附的钻石

如何在python中打印两个粘附的钻石

手掌心 2022-08-16 10:34:36
我想写一个python程序来打印上面的形状(我是python的新手),但是我已经编写了单菱形的程序,现在我有一个问题要解决这个问题,你会指南找到算法吗?  *    * ***  ************* ***  ***  *    *这是单颗钻石:def Diamond(rows):     n = 0    for i in range(1, rows + 1):         for j in range (1, (rows - i) + 1):             print(end = " ")         while n != (2 * i - 1):             print("*", end = "")             n = n + 1        n = 0        print()     k = 1    n = 1    for i in range(1, rows):         for j in range (1, k + 1):             print(end = " ")         k = k + 1        while n <= (2 * (rows - i) - 1):             print("*", end = "")             n = n + 1        n = 1        print() rows = int(input())Diamond(rows) 
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

我很无聊,你来了。


In [36]: def print_diamonds(width, ds):

    ...:     r = width//2

    ...:     for i in range(-r, r+1):

    ...:         print((' '*(abs(i)) + '*'*((r-abs(i))*2+1) + ' '*(abs(i)))*ds)

    ...:         


In [37]: print_diamonds(5, 2)

  *    *  

 ***  *** 

**********

 ***  *** 

  *    *  


查看完整回答
反对 回复 2022-08-16
?
临摹微笑

TA贡献1982条经验 获得超2个赞

您的问题很模糊,但这是每条线一颗钻石的函数。我不确定你期待什么。要明确。


vect = ('*', '***', '*****', '***', '*')


def method():

    for i in range(0,5):

        print(abs((2-i))*" ",vect[i])


查看完整回答
反对 回复 2022-08-16
  • 2 回答
  • 0 关注
  • 87 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信