[파이썬] for문을 이용해서 동적 변수 생성하는 방법이요! python은 따로 기능이 없나요??
조회수 9283회
for i in range(10) : var_i = i
이렇게는 인식이 안되더라구요.
딕셔너리쓴다면 key와 value로 묶어줄 수 있겠지만
key값을 str로 인식하게 되구요...
간단한 방법 없을까요??
-
(•́ ✖ •̀)
알 수 없는 사용자
1 답변
-
리플렉션 기능을 활용해볼 수 있습니다
파이썬은 변수와 같이 '이름' '값' 과 같이 쌍이 되는 경우 dict로 관리를 합니다.
>>> import sys >>> mod = sys.modules[__name__] >>> for i in range(10): ... setattr(mod, 'var_{}'.format(i), i) ... >>> var_0 0 >>> var_1 1
- 감사합니다! 추천하고 댓글달려고 로그인했음 ㅠㅠ 알 수 없는 사용자 2018.11.6 21:40
- 저두요 굳이 로그인까지해서 추천하고 갑니다 그만큼 감사해요!! 알 수 없는 사용자 2019.1.29 16:20
- 감사합니다~! 한 가지 궁금한 점으로 만약 for문으로 돌리는 횟수가 random 하게 지속적으로 선언이 되는 상황에서 var_0, var_1 .... var_n에 저장되는 2차원 배열들을 np.concatenate로 쌓고 싶은데, 이와 관련해서 어떤 식으로 코드를 구성하는게 좋을지 선생님의 견해를 좀 듣고 싶네요,, 알 수 없는 사용자 2019.9.5 14:08
- 사실 리플렉션이 필요치 않습니다. 데이터 구조야 list 도 있고 map 도 있어요 더 고민을 해보세요 정영훈 2019.9.5 17:11
댓글 입력