ankon Geschrieben 14. Januar 2022 Geschrieben 14. Januar 2022 Hallo, ich schreibe ein Python-Programm, wo zwei letzten Elemente der vorgegebenen Liste 'volunteer_datas' ausgegeben werden sollten. Es muss auch die Vererbung eingesetzt werden (das ist schon realisiert): class Person: def __init__(self, name: str): self.name = name def __str__(self): return f'{self.name}' class Volunteer(Person): def __init__(self, name: str, place: str, status: str): super().__init__(name) # Обеспечивает доступ к оригиналам наследованных методов. Это полезно для доступа к унаследованным методам, которые были переопределены в классе. self.place = place self.status = status def __str__(self): return f'{self.name}, {self.place}, {self.status}' volunteer_datas = [ {"name": "Smith", "place": "Boston", "status": 'Consultant'}, {"name": "Elvin", "place": "Paris", "status": 'Mentor'}, {"name": "Schwarz", "place": "Viena", "status": 'Trainer'}] print('list of guests :') for volunteer_data in volunteer_datas: for i in volunteer_data: if i == 'name' and (volunteer_data['name'] == 'Elvin' or 'Schwarz'): obj_vol = Volunteer(volunteer_data['name'], volunteer_data['place'], volunteer_data['status']) print(obj_vol.__str__()) Das Programm gibt momentan aber alle Elementen der Liste, nicht die zwei letzten: list of guests : Smith, Boston, Consultant Elvin, Paris, Mentor Schwarz, Viena, Trainer Ich wollte zuerst die Ausgabe mittels -if- realisieren (ich weiss, es ginge auch mittel -for- aber das lieber danach). Also, bei der Ausgabe wollte ich Angaben der zwei letzten Positionen aus der Liste (mit der 'name', place', Status') bekommen: {"name": "Elvin", "place": "Paris", "status": 'Mentor'}, {"name": "Schwarz", "place": "Viena", "status": 'Trainer'} Hier bitte ich um Hilfe.
Whiz-zarD Geschrieben 14. Januar 2022 Geschrieben 14. Januar 2022 Dafür gibt es das List Slicing. https://www.geeksforgeeks.org/python-get-last-n-elements-from-given-list/
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden