Генерация простого числа Python

Я скучаю по чему-то очень простому. Я новый студент Python, так что терпите меня.

for i in range(10):    
    print("\n")
    for x in range(10):
        print(x, end = " ")

Образец вывода:

0 1 2 3 4 5 6 7 8 9    
0 1 2 3 4 5 6 7 8 9    
0 1 2 3 4 5 6 7 8 9    
...

"i"Переменная устанавливает размер того, что я хочу вывести, и в приведенном выше примере я показываю диапазон 0-9, 10 раз. Как бы я изменил это, чтобы отобразить следующее без использования команды печати в виде строки или массив? Я пытаюсь использовать два вложенных оператора "for", но я рисую пустое поле для использования вместо команды range.

Желаемый результат:

0 0 0 0 0 0 0 0 0 0    
1 1 1 1 1 1 1 1 1 1    
2 2 2 2 2 2 2 2 2 2    
3 3 3 3 3 3 3 3 3 3    
...

3 ответа

Вы печатаете переменную из вашего внутреннего цикла (x) вместо переменной из внешнего цикла (i). Сделай это так:

for i in range(10):

    print("\n")
    for x in range(10):
        print(i, end = " ")

Это также работает:

for i in range(10):
  print ' '.join(str(i) * 10)

Зачем дважды зацикливаться, мы знаем str*n дать п раз ул.

>>> for x in range(10):
...     print((str(x) + ' ')*10)
... 
0 0 0 0 0 0 0 0 0 0 
1 1 1 1 1 1 1 1 1 1 
2 2 2 2 2 2 2 2 2 2 
3 3 3 3 3 3 3 3 3 3 
4 4 4 4 4 4 4 4 4 4 
5 5 5 5 5 5 5 5 5 5 
6 6 6 6 6 6 6 6 6 6 
7 7 7 7 7 7 7 7 7 7 
8 8 8 8 8 8 8 8 8 8 
9 9 9 9 9 9 9 9 9 9 

демо:

>>> 'a'*5
'aaaaa'
>>> 'a'*10
'aaaaaaaaaa'
>>> 'hello**'*10
'hello**hello**hello**hello**hello**hello**hello**hello**hello**hello**'
>>> '9'*10
'9999999999'
Другие вопросы по тегам