class Formula(object): def __init__(self, o1, o2, o): self.o1=o1 self.o2=o2 self.o=o self.is_oper=False def __repr__(self): return "(%s%s%s)" %(self.o1, self.o, self.o2) __str__=__repr__ @classmethod def from_postfix(cl, string): atoms=list(map(Atom, string)) while len (atoms)>1: for i,a in enumerate(atoms): if not a.is_oper: continue else: if a.is_unar: a.parse_unar (atoms,i) else: a.parse_postfix(atoms, i) break return atoms[0]
Было бы здорово, если кто-то может объяснить, как обращаться с массивами (я так понимаю, нужен массив, построенный при помощи функции map, ибо до класса array мы пока не дошли).