es geht um die Methode print_contents(self, sorting=None) der Klasse Aktienliste. In der geposteten Form funktioniert der Code und es erfolgt eine Ausgabe. Ich möchte die Ausgabe aber jetzt nicht direkt durchführen sondern an Tkinter zwecks Ausgabe in einem Textfeld übergeben.
Wenn ich
Code: Alles auswählen
text_aus_print_contents = *sorted(self.items, key=sortkey)
Vielen Dank!
Code: Alles auswählen
class Aktie(object):
def __init__(self, counter):
self.id = counter
self.name = eingabe('Name: ')
...
def __str__(self):
return ('{wkn:6} {name:15} '
'{aktkurs:8.2f} {aktdiv:8.2f} {divrendite:8.2f} '
'{akteps:8.2f} {kgv:8.2f}'.format(**self.__dict__))
...
class Aktienliste(object):
def __init__(self):
self.items = []
...
def print_contents(self, sorting=None):
sortkey = attrgetter(sorting) if sorting else None
print(*sorted(self.items, key=sortkey), sep='\n')
Code: Alles auswählen
t.insert(END, text_aus_print_contents)