qq_42696575 2020-11-26 10:05 采纳率: 0%
浏览 14

打印菱形自己写的代码有错误不知道这么修改,麻烦大佬看看。

打印出如下图案(菱形):
'''
   *
  ***
 *****
*******
 *****
  ***
   *
'''

原题

自己写的

a = [1,3,5,7,5,3,1]
for i in range(8):
	if  0<= i < 4 :
		print(" " * int(((8 - 2*i)/2)) + "*" * int(a[i]))
	elif 3 < i <= 7:
		print(" " * int(i-2) + "*" * int(a[i]))

结果

    *
   ***
  *****
 *******
  *****
   ***
    *
Traceback (most recent call last):
  File "23.py", line 42, in <module>
    print(" " * int(i-2) + "*" * int(a[i]))
IndexError: list index out of range

有没有大佬会解决这个小问题啊, 

  • 写回答

2条回答 默认 最新

  • 你不懂的吧 2020-11-26 11:07
    关注


    一共才7个数,下标从0 开始的 0-6 就有7个数了

     

    a = [1,3,5,7,5,3,1]
        
    for i in range(7):
        
        if  0<= i < 4 :
        
            print(" " * int(((7 - 2*i)/2)) + "*" * int(a[i]))
        
        elif 3 < i <= 6:
        
            print(" " * int(i-2) + "*" * int(a[i]))

     

    评论

报告相同问题?

悬赏问题

  • ¥15 彩灯控制电路,会的加我QQ1482956179
  • ¥200 相机拍直接转存到电脑上 立拍立穿无线局域网传
  • ¥15 (关键词-电路设计)
  • ¥15 如何解决MIPS计算是否溢出
  • ¥15 vue中我代理了iframe,iframe却走的是路由,没有显示该显示的网站,这个该如何处理
  • ¥15 操作系统相关算法中while();的含义
  • ¥15 CNVcaller安装后无法找到文件
  • ¥15 visual studio2022中文乱码无法解决
  • ¥15 关于华为5g模块mh5000-31接线问题
  • ¥15 keil L6007U报错