fromkeys 메서드와 그 한계 이해
fromkeys 메서드를 사용하여 사전을 초기화할 때 다음과 같은 동작을 인식하는 것이 중요합니다. 단일 요소 인수. 목록을 두 번째 인수로 전달하면 모든 사전 값이 동일한 목록 개체를 참조하게 됩니다.
의도하지 않은 공유 방지: 대체 접근 방식
의도하지 않은 값 공유를 방지하려면, 대체 방법 사용을 고려해보세요:
Dict Comprehension(Python 2.7 ):
data = {k: [] for k in range(2)}
Dict 생성자를 사용한 List Comprehension:
data = dict([(k, []) for k in range(2)])
Dict를 사용한 생성기 표현식 (Python 2.4-2.6):
data = dict((k, []) for k in range(2))
간단한 예: 특정 키에 값 추가
다음 코드 의도된 동작을 보여줍니다.
data = {0: [], 1: []} data[1].append('hello') print(data) # Output: {0: [], 1: ['hello']}
하나를 사용하여 제안된 방법 중 빈 목록의 사전을 초기화하고 다른 키 값에 영향을 주지 않고 개별 키 값을 수정할 수 있습니다.
위 내용은 Python의 `fromkeys` 메서드를 사용할 때 공유 참조를 어떻게 피할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!