사전 _dict
과 변수 n
이 있다고 가정합니다.사전에있는 기존 값을 업데이트하는 비 유적 방법
_dict = {'a': 9, 'b': 7, 'c': 'someValue'}
n = 8
예 : n
값이 b
의 실제 값보다 큰 경우에만 {'b': 7}
을 입력하십시오. 내가 가진 솔루션은 지금까지 {'a': 9, 'b': 8, 'c': 'someValue'}
의 원하는 결과를 제공
_dict.update({'b': n for key, value in _dict.items() if key == 'b' and n > value})
입니다. 그래서 지금 내 질문에 : 더 짧은, pythonic 방법이 있나요? (바람직하게는 추가 모듈을 수입하지 않고)
왜 새 사전을 만들어야합니까? 당신은'if' 조건으로 이것을 간단히 작성할 수 있습니다. – thefourtheye
** 하나 ** 키에 대해 왜 루핑합니까? 간단하게 직접 액세스 할 수 있습니다. –
@MartijnPieters @thefortheye 이전에'if' 절을 조건으로 단일 값을 업데이트하려고 시도했으나 그게 효과가 없어서 사전을 반복하는 데 신속히 이관되었습니다. (제 경우에는 사전에 문제가 없으므로 5-10 키). 하지만 귀하의 조언 덕분에 – heiiRa