Python
for문으로 변수 명 할당 (format, globals 함수)
샐님
2024. 5. 3. 10:27
728x90
반응형
for문을 사용해 sheet명을 부여하려고 한다.
파이썬에서 변수명을 다르게 생성할수 있는지 알아 보았다.
format, globals 함수를 활용하면 가능하다고 한다. 먼저 format() 은 말그대로 {}안을 지정 값으로 변경해주는 함수이다.
1.Foramt()
#변수이름을 바꿔가면서 할당
# format 함수 & globals 함수 활용
#1. Format 함수 : 중괄호 {} 를 index 로 사용
A =9
B=3
val = "{}*{} ={}".format(A,B,A*B)
print(val)
# 문자도 가능
A = ['맑음','흐림','비']
val = "오늘의 날씨는 {}입니다.".format(A[0])
print(val)
<결과>
9*3 =27
오늘의 날씨는 맑음입니다.
#for 문 적용
for i in A:
val = "오늘의 날씨는 {}입니다".format(i)
print(val)
<결과>
오늘의 날씨는 맑음입니다
오늘의 날씨는 흐림입니다
오늘의 날씨는 비입니다
globals는 변수의 이름을 바꿔주는 역할을 한다.
2.Globals()
#globals 함수
A = ['월요일','화요일','수요일']
B = ['맑음','흐림','비']
#zip 함수 : 두 가지 리스트를 for문으로 풀어줄때 사용.
for i,j in zip(A,B):
globals()[i] = "{}의 날씨는 {}입니다.".format(i,j)
print(globals()[i])
#출력 결과
#월요일의 날씨는 맑음입니다.
#화요일의 날씨는 흐림입니다.
#수요일의 날씨는 비입니다.
print(월요일)
#월요일의 날씨는 맑음입니다.
print(화요일)
#화요일의 날씨는 흐림입니다.
3. Format() 과 Globals()의 활용
#Format() 과 Globals() 활용
A = ['월요일','화요일','수요일']
B = ['맑음','흐림','비']
C = ['좋음','나쁨','보통']
for i,j in zip(C,range(len(C))):
globals()['A{}'.format(str(j+1))] = "A{}의 기분은 {}입니다.".format(str(j+1),i)
print(globals()['A{}'.format(str(j+1))])
#A1의 기분은 좋음입니다.
#A2의 기분은 나쁨입니다.
#A3의 기분은 보통입니다.
728x90
반응형