Python에서 두 목록을 사전으로 변환
-
zip()
및dict()
를 사용하여 두 목록을 Python의 사전으로 변환 - 딕셔너리 내포을 사용하여 Python에서 목록을 사전으로 변환
-
for
루프를 사용하여 Python에서 목록을 사전으로 변환
이 튜토리얼은 파이썬에서 두 개의 목록을 사전으로 변환하는 방법을 소개합니다. 여기서 하나의 목록은 사전의 키를 포함하고 다른 목록은 값을 포함합니다.
zip()
및dict()
를 사용하여 두 목록을 Python의 사전으로 변환
Python에는 반복 가능한 데이터 유형을 튜플로 집계하여 호출자에게 반환하는zip()
이라는 내장 함수가 있습니다. 함수dict()
는 주어진 컬렉션에서 사전을 만듭니다.
key_list = ["name", "age", "address"]
value_list = ["Johnny", "27", "New York"]
dict_from_list = dict(zip(key_list, value_list))
print(dict_from_list)
이 솔루션에서는 한 줄과 두 개의 함수를 사용하여 목록을 사전으로 변환 할 수 있습니다.
출력:
{'name': 'Johnny', 'age': '27', 'address': 'New York'}
딕셔너리 내포을 사용하여 Python에서 목록을 사전으로 변환
사전 이해는 Python에서 사전을 만드는 초기화 시간을 단축하는 방법입니다. 내포은 여러 줄과 변수가 필요한 for 루프를 대체합니다. 내포은 초기화 작업을 한 줄로 수행합니다.
이 솔루션에서zip()
함수는 여전히 사전 이해에 값을 제공합니다. 이해는 함수zip()
의 반환 값 내에있는 각 연속 요소의 키-값 쌍을 사전으로 반환합니다.
key_list = ["name", "age", "address"]
value_list = ["Johnny", "27", "New York"]
dict_from_list = {k: v for k, v in zip(key_list, value_list)}
print(dict_from_list)
목록을 사전으로 변환하는 또 다른 방법은 목록의 인덱스를 활용하고range()
함수를 사용하여 두 목록을 반복하고 이해력을 사용하여 사전을 만드는 것입니다.
키 목록과 값 목록의 길이가 동일하다고 가정합니다. 이 예에서 키 목록 길이는 범위의 기준이됩니다.
key_list = ["name", "age", "address"]
value_list = ["Johnny", "27", "New York"]
dict_from_list = {key_list[i]: value_list[i] for i in range(len(key_list))}
print(dict_from_list)
이 두 가지 이해 솔루션은 이전 예제와 동일한 결과를 제공합니다.
이 두 솔루션의 유일한 차이점은zip()
함수를 사용하여 목록을 튜플로 변환한다는 것입니다. 다른 하나는range()
함수를 사용하여 현재 색인을 사용하여 두 목록을 반복하여 사전을 만듭니다.
출력:
{'name': 'Johnny', 'age': '27', 'address': 'New York'}
for
루프를 사용하여 Python에서 목록을 사전으로 변환
목록을 사전으로 변환하는 가장 간단한 방법은 반복하는 것입니다. 이 방법은 가장 비효율적이고 길지만, 특히 초보자이고 기본 프로그래밍 구문에 대해 더 많이 이해하려는 경우 좋은 시작입니다.
루핑하기 전에 빈 사전을 초기화하십시오. 그 후, 중첩 된 루프가 필요한 변환을 진행하십시오. 외부 루프는 키 목록을 반복하고 내부 루프는 값 목록을 반복합니다.
key_list = ["name", "age", "address"]
value_list = ["Johnny", "27", "New York"]
dict_from_list = {}
for key in key_list:
for value in value_list:
dict_from_list[key] = value
value_list.remove(value)
break
print(dict_from_list)
키-값 쌍이 형성 될 때마다 목록에서 값 요소를 제거하여 다음 키에 다음 값이 할당되도록합니다. 제거 후 내부 루프를 끊고 다음 키로 진행하십시오.
루프를 사용하는 또 다른 해결책은 range()
를 사용하여 인덱스를 사용하여 키와 값 쌍을 얻는 것입니다. 예에서 사전 이해를 사용하여 수행 한 것과 같습니다.
key_list = ["name", "age", "address"]
value_list = ["Johnny", "27", "New York"]
dict_from_list = {}
for i in range(len(key_list)):
dict_from_list[key_list[i]] = value_list[i]
print(dict_from_list)
두 솔루션 모두 동일한 출력을 생성합니다.
{"name": "Johnny", "age": "27", "address": "New York"}
요약하면, 두 목록을 사전으로 변환하는 가장 효율적인 방법은 내장 함수zip()
을 사용하여 두 목록을 튜플으로 변환 한 다음dict()
를 사용하여 튜플을 사전으로 변환하는 것입니다.
사전 이해를 사용하면zip()
을 사용하여 목록을 튜플으로 변환하거나range()
를 사용하여 목록을 사전으로 변환하고 목록 색인을 사용하여 사전을 반복하고 초기화 할 수도 있습니다.
이 두 솔루션은 일반 루프를 사용하여 목록을 사전으로 변환하는 순진한 솔루션보다 나은 솔루션입니다.
Skilled in Python, Java, Spring Boot, AngularJS, and Agile Methodologies. Strong engineering professional with a passion for development and always seeking opportunities for personal and career growth. A Technical Writer writing about comprehensive how-to articles, environment set-ups, and technical walkthroughs. Specializes in writing Python, Java, Spring, and SQL articles.
LinkedIn관련 문장 - Python List
- Python에서 사전을 목록으로 변환
- Python의 목록에서 요소의 모든 발생 제거
- Python의 목록에서 중복 제거
- 파이썬에서 목록의 평균을 얻는 방법
- 추가 및 확장 목록 방법의 차이점은 무엇입니까
- 파이썬에서리스트를 문자열로 변환하는 방법