Mam moduł z kolekcji:Pierwsze imię wartości od namedtuple
import collections
named_tuple_sex = collections.namedtuple(
'FlightsResultsSorter',
['TotalPriceASC',
'TransfersASC',
'FlightTimeASC',
'DepartureTimeASC',
'DepartureTimeDESC',
'ArrivalTimeASC',
'ArrivalTimeDESC',
'Airlines']
)
FlightsResultsSorter = named_tuple_sex(
FlightsResultsSorter('TotalPrice', SortOrder.ASC),
FlightsResultsSorter('Transfers', SortOrder.ASC),
FlightsResultsSorter('FlightTime', SortOrder.ASC),
FlightsResultsSorter('DepartureTime', SortOrder.ASC),
FlightsResultsSorter('DepartureTime', SortOrder.DESC),
FlightsResultsSorter('ArrivalTime', SortOrder.ASC),
FlightsResultsSorter('ArrivalTime', SortOrder.DESC),
FlightsResultsSorter('Airlines', SortOrder.ASC)
)
i w innym module I iteracyjne o tej kolekcji i chcę uzyskać nazwę elementu:
for x in FlightsResultsSorter:
self.sort(x)
więc w po kodzie chcę zamiast tego x (który jest obiektem) przekazuje na przykład "WyjazdTimeASC" lub "ArrivalTimeASC".
Jak mogę uzyskać tę nazwę?
poważaniem
Czy jest jakikolwiek inny sposób, aby to zrobić bez uzyskiwania dostępu do prywatnego członka namedtuple? – user3885927
nie są one uważane za członków prywatnych - konwencja _ służy tylko unikaniu kolizji z, powiedzmy, polem zwanym _fields. –