2014-09-20 2 views
1

this is the question i am trying to solveпитона вложенных цикла печати пространства между двумя символами каждый повтор

я попробовал все, чтобы получить пробелы появляются между хэштегов, но потерпели неудачу. я не знаю, что еще делать

Это то, что я сделал до сих пор, я нашел несколько способов получить только 1 пробел между хэштегами, но чтобы они повторяли каждый раз, это то, что я не смог сделать

star = 6 

for r in range(star): 
    for c in range(r - 5): 
     print ' ', 
    print '##', 
    print 

this is the output i get

любая помощь приветствуется.

ответ

0
def hashes(n): 
    for i in range(n): 
     print '#' + ' '*i + '#' 

Тестирование

>>> hashes(1) 
## 

>>> hashes(4) 
## 
# # 
# # 
# # 
+0

он работал как шарм, спасибо =) – user3495129

+1

Это решение имеет только один цикл. В исходном вопросе задавались вложенные петли. – mdwhatcott

+0

@mdwhatcott Кому это нужно? Я думаю, что исходный вопрос просто описывал их первую попытку и был просто проблемой [xy] (http://meta.stackexchange.com/questions/66377/what-is-the-xy-problem). Если это решение решает их актуальную проблему, реализация не важна. – CoryKramer

0

Очевидно, что более емкие способы сделать это, но оригинальный вопрос называется для вложенных циклов:

import sys 

inner = 1 
for x in range(6): 
    sys.stdout.write('#') 
    for y in range(inner): 
     if y == inner - 1: 
      sys.stdout.write('#') 
     else: 
      sys.stdout.write(' ') 
    sys.stdout.write('\n') 
    inner += 1 

Выход:

$ python loops.py 
## 
# # 
# # 
# # 
# # 
#  #