DB
Size: a a a
DB
TT
TT
n = int(input())
matrix = [['.']*n]*n
for i in range(0,n):
for j in range(0,n):
if i == j :
matrix[i][j] = '*'
print(matrix[i][j],sep='',end=' ')
print('')
TT
n = 5вот такой код выводит то, что ожидалось от первого варианта
matrix = [['']*n]*n
for i in range(0,n):
for j in range(0,n):
if i == j :
matrix[i][j] = '*'
else :
matrix[i][j] = '.'
print(matrix[i][j],sep='',end=' ')
print('')
TT
TT
СК
TT
TT
~
MK
matrix = [['.']*n]*n), то у тебя получается по факту N строк в матрице, которые ссылаются на одну и ту же строку, поэтому меняя что-либо в одной строке у тебя поменяется во всех строкахmatrix = [['.' for _ in range(n)] for _ in range(n)]A
[1]*3
[[1]] * 3
TT
A
A
A
SB
TT
AB
AB