1 개요[ | ]
- orderBy()
2 PHP[ | ]

3 Python[ | ]

Python
Copy
from pprint import pprint
def orderBy(by, ascending=[]):
class K:
def __init__(self, o, *args): self.o = o
def __lt__(self, other):
for i, key in enumerate(by):
asc = ascending[i] if i < len(ascending) else True
if self.o[key] < other.o[key]: return asc
if self.o[key] > other.o[key]: return not asc
return K
employees = [
{'EmployeeID':'1', 'Name':'한놈', 'BirthDate':'1999-01-01'},
{'EmployeeID':'2', 'Name':'두시기', 'BirthDate':'2000-01-01'},
{'EmployeeID':'3', 'Name':'석삼', 'BirthDate':'1999-01-01'},
{'EmployeeID':'4', 'Name':'너구리', 'BirthDate':'2000-01-01'}
]
pprint( sorted(employees, key=orderBy(['BirthDate'])) )
pprint( sorted(employees, key=orderBy(['BirthDate','Name'],ascending=[False,True])) )
Loading
편집자 Jmnote Jmnote bot
로그인하시면 댓글을 쓸 수 있습니다.