검색을 위해 데이터 구조에 함수 저장
함수를 목록이나 사전에 저장하면 인덱스나 키를 기반으로 선택적 실행이 가능합니다. 그러나 데이터 구조 내에 함수 호출을 저장하는 순진한 접근 방식은 원하는 결과를 얻지 못합니다.
Python은 함수를 일류 객체로 지원하여 우아한 솔루션을 제공합니다. 함수를 객체로 처리하면 사전을 사용하여 전달할 수 있습니다. 키는 함수를 나타내고 값은 함수 개체 자체를 나타냅니다. 함수를 실행하려면 사전 항목을 괄호를 사용하여 함수로 호출하기만 하면 됩니다.
dispatcher = {'foo': foo, 'bar': bar} dispatcher['foo']()
여러 함수가 사전 내에 목록으로 저장되어 있는 경우 루프를 사용하여 각 함수를 실행할 수 있습니다.
def fire_all(func_list): for f in func_list: f() dispatcher = {'foobar': [foo, bar], 'bazcat': [baz, cat]} fire_all(dispatcher['foobar'])
이 접근 방식을 사용하면 특히 특정 함수 이름을 기억하는 것이 번거로워지는 대량의 경우 함수를 편리하게 저장하고 검색할 수 있습니다.
위 내용은 Python 데이터 구조에서 함수를 어떻게 저장하고 검색할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!