NEXT_GO!! MYPI

NEXT_GO!!
접속 : 3035   Lv. 34

Category

Profile

Counter

  • 오늘 : 134 명
  • 전체 : 335691 명
  • Mypi Ver. 0.3.1 β
[기본] 파이썬 문자+숫자로 조합된 변수를 for문에 사용하는 질문입니다. (7) 2020/06/17 PM 12:25

변수가 a0, a1, a3, a4입니다

이걸 for문에 사용하려고 합니다.

for i in range():

    a+i ???

    a+[i]???


저런식으로 하면 당연히 에러나겠죠?

어떻게 해야 a...변수들을 순차적으로 반복문안에서 써먹을수 있나요?

신고

 

v41n    친구신청

exec('a' + str(1) + ' = 30')
상황에 따라, exec, eval, compile 사용... 이긴 하나... 이런 방법은 그닥 추천하고싶진 않네요....

링크링크    친구신청

배열 쓰는게 편할듯요

dusldus    친구신청

변수를 배열에 넣고 for로 호출해서 쓰세요.
동적으로 변수를 생성해야 한다면 찾아보니 setattr(mod, ‘var_{}’.format(i), i) 라는게 있네요

란포    친구신청

# a 변수가 리스트라면 아래와 같이 하는게 파이썬 다운 코드
a = ['a', 'b', 'c', 'd']
for c in a:
print(c)
print(72*'-')

# range를 써서 index로 접근해도 되지만 위 코드가 더 깔끔한 표현
for i in range(len(a)):
print(a[i])
print(72*'-')

# 만약 a 변수가 리스트가 아니라 님 조건처럼 a0, a1, a3, a4 식이라면
# for로 접근하려면 문자열로 변수명을 연산한 후 eval를 써야 할 듯
a0 = 'a'
a1 = 'b'
a3 = 'c'
a4 = 'd'
for i in [0, 1, 3, 4]:
print(eval-'a{}'.format(i)))

댓글은 들여쓰기가 잘 안되네요 for 블럭 안에는 들여쓰기 해야 함

NEXT_GO!!    친구신청

감사합니다 !

revliskciuq    친구신청

와 신기한 파이선나라

NEXT_GO!!    친구신청

역시 파이썬은 파이썬답게 코딩을 해야겠군요
댓글주신 모든분들 감사합니다~
X