Wpis z mikrobloga

#naukaprogramowania #python

class Matrix:
....def __init__(self, matrix_string):
........self.matrix = [[int(i) for i in row.split()] for row in matrix_string.split('\n')]
........print(self.matrix)

....def row(self, index):
........print(self.matrix[index-1])

....def column(self, index):
........print([row[index - 1] for row in self.matrix])

test = Matrix("1 2 3\n3 4 5\n5 7 8\n5 77 44")
test.row(4)
test.column(3)

to miało zwracać albo printować wiersze lub kolumny ze stringa.
w sensie działa, ale nie wiem czy to do końca rozumiem.
czy to jest relatywnie trudne dla początkującego, czy jestem po prostu głupi?
  • 11
@ponuryrolnik: Jak ja nienawidzę pythona i jego braku typów w kodzie.

To jest generalnie proste jak konstrukcja cepa ale python ma to do siebie, że musisz w głowie domyślać się widząc taki kod co czym jest.
@SuperStefan: Niby tak, używamy tej notacji w pysparku.
Problem jest taki, że to trzeba na ludziach dodatkowo wymuszać zamiast po prsotu mieć w języku.

@ponuryrolnik: dziękuję. Python jest gównem ale gównem, za które mi płacą dlatego nie mogę tego mówić za głośno.