Wpis z mikrobloga

#programowanie #python

mam metodę, która rysuje mapy. Raz rysuje biorąc dane z pola a, raz biorąc dane z pola b (w zależności od podanego do metody parametru). Wygląda to mniej-więcej tak:

'def rysuj_mape(self, typ_mapy):
' if typ_mapy == 'a':
' ' rysuj(self.a)
' elif typ_mapy == 'b':
' ' rysuj(self.b)

problem w tym, że funkcja rysuj jest bardziej skomplikowana i wielokrotnie występuje tam odwołanie do self.a lub self.b

chciałbym zrobić coś takiego:

'def rysuj_mape(self, parametr):
' magia = cos_zrob_z_tym(parametr)
' rysuj(self.magia)

czyli przekazać do funkcji nazwę parametru z którego ma korzystać. Da się to jakoś wyczarować?
  • 7
@askorek: kombinujesz jak koń pod górę.

problem w tym, że funkcja rysuj jest bardziej skomplikowana i wielokrotnie występuje tam odwołanie do self.a lub self.b

przecież w rysuj nie używasz już self.a ani self.b tylko argumentu rysuj
@fnord23: tak naprawde jest to troche bardziej skomplikowane, coś w stylu:

self.znajdz_element(0).a
self.znajdz_element(90).a
self.znajdz_element(180).a

itd - używam tego samego pola kilku różnych obiektów tej samej klasy