n개의 변수를 한번에 지정하는 방법이 있을까요?
211
작성한 질문수 2
a_1 =[ ]
a_2 =[ ]
...
a_n =[ ]
위와 같이 n개의 변수를 빈 리스트나 0으로 지정하고 싶은데 잘안됩니다.
n값만 넣어주면 위와 같이 자동으로 변수를 지정할 수 있는 방법이 있을까요?
답변 1
4
일단 파이썬의 setattr 함수를 사용해서 가능은 합니다.
import sys
# 현재 모듈을 변수화 합니다.
module = sys.modules[__name__]
# 루프를 돌며 현재 모듈에 속성을 설정합니다.
# 여기서 속성이 해당 모듈의 변수가 됩니다.
for i in range(5):
setattr(module, "a_{}".format(i), 0)
# 위에서 저장한 변수를 출력합니다.
for i in range(5):
print("변수: a_{}:{}".format(i, eval("a_{}".format(i))))
그러나!! 개인적으로 이렇게 사용하는걸 추천하진 않습니다. 딕셔너리, 리스트, 맵, 튜플 등 파이썬에는 사용하기 편한 훌륭한 자료형태들이 많은데 이렇게 사용할 이유가 없어보입니다. 변수 지정을 하고나서도 차후 코드에서 사용할때 항상 복잡한 문제가 생길것 같습니다. 물론 개인적인 의견일 뿐입니다. ^^;;
38강 = 연산자 더하고 빼기
0
60
2
주석처리
0
117
1
함수의 파라미터값 msg
0
155
1
강의자료 이미지 안나옴
0
239
3
강의자료 질문 두번째
0
165
3
강의자료 관련 질문
0
116
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
235
1
소수 너무 어려워요
0
245
1
imagefont 함수 사용
0
239
1
pylint
0
357
1
add 함수 문의 ㅠㅠ
0
283
1
형식 문의드립니다.
0
209
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
602
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
253
1
zsh: command not found: pylint
0
269
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
546
1
질문드립니다.
1
374
2
list.reverse() 출력에 대해서 질문있습니다.
1
433
1
데코레이터 함수 및 동작시간 질문입니다.~
1
323
2
opencv 사용하면서 궁금한점 (해상도)
1
781
1
질문드립니다.
1
299
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
445
1
크롤링안되는 현상 문의 드립니다.
1
421
1
파이썬 크롤링 관련 문의
1
277
1





