오늘 아침에 스크립트를 작성할 때 기대하지 않은 것을 발견했습니다. 나는 목록 이해력을 사용하여 하나의 성명서에서 모두 그것을 정렬하려고 시도하고 놀라운 결과를 얻었다. 다음 코드는 내 일반적인 사용 사례를 요약하지만,이 질문에 대한 단순화 :한 문장으로 목록 이해하기
이Transaction = namedtuple('Transaction', ['code', 'type'])
my_list = [Transaction('code1', 'AAAAA'), Transaction('code2', 'BBBBB'), Transaction('code3', 'AAAAA')]
types = ['AAAAA', 'CCCCC']
result = [trans for trans in my_list if trans.type in types].sort(key = lambda x: x.code)
print result
출력 : 내가 이해를 사용하여 목록을 작성하는 경우
None
는 다음 사후을 정렬 모든입니다 벌금. 왜 이런 일이 일어 났는지 궁금합니다.
'sort' 메소드는리스트를 in * place *로 정렬 한 다음'None'을 반환합니다. – sloth