이 코드는 어떻게 단순화 할 수 있습니까? 그것은 질문입니다.목록 단순화
stat_keys.append(self.request.get("stat_one"))
stat_keys.append(self.request.get("stat_two"))
stat_keys.append(self.request.get("stat_three"))
stat_keys.append(self.request.get("stat_four"))
이 코드는 어떻게 단순화 할 수 있습니까? 그것은 질문입니다.목록 단순화
stat_keys.append(self.request.get("stat_one"))
stat_keys.append(self.request.get("stat_two"))
stat_keys.append(self.request.get("stat_three"))
stat_keys.append(self.request.get("stat_four"))
stat_keys += [self.request.get(k) for k in ('stat_one', 'stat_two', 'stat_three', 'stat_four')]
또는
을stat_keys += map(self.request.get, ('stat_one', 'stat_two', 'stat_three', 'stat_four')))
또는
map(stat_keys.append, map(self.request.get, ('stat_one', 'stat_two', 'stat_three', 'stat_four')))
은 그래도 첫 번째 제안. 발전기 식
.extend()
에
어려움은 변수 중 하나가 무엇인지 모른 채 대답 만하는 방법이에 대한 :
for stat in ('stat_one', 'stat_two', 'stat_three', 'stat_four'):
stat_keys.append(self.request.get(stat))
을 또는 발전기 표현 사용 :
[stat_keys.append(self.request.get(stat)) for stat in ('stat_one', 'stat_two', 'stat_three', 'stat_four')]
변경 :
stat_keys.extend(self.request.get(stat) for stat in('stat_one', 'stat_two', 'stat_three', 'stat_four'))
s_list = [ "stat_one", "stat_two", "stat_three", "stat_four" ]
[ stat_keys.append(self.request.get(s)) for s in s_list ]
stat_keys' 우리가 문제의 정보에서 모르는'extend'을 지원'이라고 가정. – aquavitae