문자열 이름으로 변수 값 액세스
많은 시나리오에서 사전을 사용하여 문자열 기반 변수 조회를 수행할 수 있습니다. 방법은 다음과 같습니다.
get_ext = {'text': ['txt', 'doc'], 'audio': ['mp3', 'wav'], 'video': ['mp4', 'mkv']}
이제 문자열 입력으로 원하는 목록을 검색할 수 있습니다.
get_ext['audio'] # ['mp3', 'wav']
함수 사용을 선호하는 경우 사전의 get 메서드를 할당할 수 있습니다. 또는 항목 가져오기 메서드(__getitem__)를 여기에 추가합니다.
get_ext = get_ext.get get_ext('video') # ['mp4', 'mkv']
get_ext.get에 할당하면 기본값이 제공됩니다. 알 수 없는 키에 대해 None을 반환하는 동작. 대신 KeyError의 경우 get_ext.__getitem__에 할당하세요.
또는 함수 내부에 사전을 래핑하여 사용자 정의 기본값을 제공할 수 있습니다.
def get_ext(file_type): types = {'text': ['txt', 'doc'], 'audio': ['mp3', 'wav'], 'video': ['mp4', 'mkv']} return types.get(file_type, [])
설정을 최적화하려면 다음을 수행하세요. call 메소드로 클래스를 정의하여 조회:
class get_ext(object): def __init__(self): self.types = {'text': ['txt', 'doc'], 'audio': ['mp3', 'wav'], 'video': ['mp4', 'mkv']} def __call__(self, file_type): return self.types.get(file_type, [])
이 접근 방식은 유형 사전을 한 번만 생성하여 효율성을 높이고 동적 업데이트를 허용합니다.
get_ext = get_ext() get_ext.types['binary'] = ['bin', 'exe'] get_ext('binary') # ['bin', 'exe']
위 내용은 Python에서 문자열 이름을 사용하여 변수 값에 어떻게 액세스할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!