문자열 입력을 기반으로 변수를 선택하는 방법에는 여러 가지가 있습니다.
사전
이런 경우에는 일반 사전이 적합한 경우가 많습니다. 작업:
get_ext = {'text': ['txt', 'doc'], 'audio': ['mp3', 'wav'], 'video': ['mp4', 'mkv']} get_ext['video'] # returns ['mp4', 'mkv']
함수
특정 이유로 함수가 필요한 경우 사전의 get 메서드에 할당할 수 있습니다.
get_ext = get_ext.get # Equivalent to get_ext = lambda key: get_ext.get(key) get_ext('video') # returns ['mp4', 'mkv']
기본적으로 알 수 없는 키에 대해서는 None을 반환합니다. 대신 KeyError를 발생시키려면 get_ext.__getitem__에 할당하세요.
get_ext = get_ext.__getitem__ # Equivalent to get_ext = lambda key: get_ext.__getitem__(key) get_ext('video') # returns ['mp4', 'mkv']
Custom Default Value
사전을 함수:
def get_ext(file_type): types = {'text': ['txt', 'doc'], 'audio': ['mp3', 'wav'], 'video': ['mp4', 'mkv']} return types.get(file_type, [])
최적화
함수를 호출할 때마다 사전을 다시 생성하지 않으려면 클래스를 사용할 수 있습니다.
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') # returns ['bin', 'exe']
위 내용은 문자열 입력을 사용하여 Python에서 변수를 어떻게 선택할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!