2017-02-21 28 views
0

Я пытаюсь напечатать символы n количество раз по горизонтали, и до сих пор, у меня есть этот код:печать символ по горизонтали, используя для цикла

#print n times * 

times=input("¿How many times will it print * ? ") 

for i in range(times): 
    print"* \t" 

но результат таков:

¿Сколько раз он будет печатать *? 5 *
*
*
*
*

Как сделать звездочку печать по горизонтали?

EG:
* * * * * *

ответ

0

Это потому, что по умолчанию, print функция питона добавляет символ новой строки после него, вы будете хотеть использовать sys.stdout.write(), как вы можете видеть here

EG:

#print n times * 
import sys 
times=input("¿How many times will it print * ? ") 

for i in range(times): 
    sys.stdout.write("* \t") 
#Flush the output to ensure the output has all been written 
sys.stdout.flush() 
1

Прежде всего, вы должны отдать свой вклад в междунар.

Во-вторых, добавив запятую в конце вашего заявления на печать, он будет печатать по горизонтали.

Кроме того, как вы используете Python 2.x, вы должны использовать raw_input вместо input

times = int(raw_input("How many times will it print * ? ")) 

for i in range(times): 
    print "* \t", 

Выход:

* * * * * 
0

Вы можете начать пытаться это. Насколько мне известно, print() систематически вставляет \ n (разрыв строки) после каждого вызова, поэтому решение должно называть «print()» только один раз.

#print n times * 

times=input("¿How many times will it print * ? ") 

str = "" 
for i in range(times): 
    str += "* \t" 

print(str)