I am trying to pass the data_lst up to Class:'Paper''s function: 'save' such that I can print it from there. The structure is fixed and I am not allowed to used global variables. How do i get around this?
class Paper:
def __init__(self):
pass
def add_page(self, **kwargs):
self.p = 1
self.pp = 5
page = Page(self.p, self.pp, paper=self)
return page
def save(self, **kwargs):
#This is where i want to print the data from get_data
print('final price =', data_lst)
class Page:
def __init__(self, p, pp, paper=False):
self.paper = paper
self.p = p
self.pp = pp
assert paper
def add_fig(self):
fig = Figure(p=self.p, pp=self.pp)
return fig
class Figure:
def __init__(self, p=0, pp=0):
self.p = p
self.pp = pp
data_lst = self.get_data()
def get_data(self):
### get some data in a list
data_lst = [self.p for x in range(self.pp)]
return data_lst
paper = Paper()
page1 = paper.add_page()
page1.add_fig()
#paper.save() this call needs to print the data