2016-10-17 57 views
0

所以我想绘制一个简单的图案,两种分开。它应该看的方式是:我怎样才能清理这个模式绘图代码?

**........* 
*.*.......* 
*..*......* 
*...*.....* 
.........* 
........* 
.......* 
......* 

截至目前,我有底部完成,但它是不是很干净的话,那是非常笨重,必须有一个方法来平滑它并且让它更快,更简洁,对于最上面的部分,我仍然需要弄清楚如何添加*的移动,我有一些想法,但他们都失败了哈哈。

所以我有什么作为的,现在是:

x = 8 
while x > 4: 
    for c in range(0,1): 
     print('*', end='') 
     for r in range(0,10): 
      print('.', end='') 
     print('*') 
     x = x-1 

这是顶部截至目前,它的工作原理来获得*的周期的两侧,我的底部但是实在是混乱和我只是觉得,必须有一种方法,使人们能够更快:

while x == 4: 
    for c in range(0,9): 
     print('.', end='') 
    print('*') 
    x = x-1 
    while x == 3: 
     for c in range(0,8): 
      print('.', end='') 
     print('*') 
     x = x-1 
     while x == 2: 

它一直持续这样直到 而X == 1: ,那就是,但有什么办法来压缩编码成更快的事情,以及我如何着手添加* goi在顶部4排上并排摆放?我并不是要求每个人都有答案,除了底部 - 只是一个正确的方向,我更愿意学习,而不是仅仅给出答案。

回答

0
'.'*6 

意味着 ......(点六倍),所以不是

for c in range(0,9): 
    print('.', end='') 

只是做

print('.'*9,end='') 
相关问题