동적으로 변수 명을 만들고 싶을 때 globals()함수 사용

 

color= ['빨강', '주황', '노랑', '초록', '파랑']

color_1 = color[0]
color_2 = color[1]
color_3 = color[2]
color_4 = color[3]
color_5 = color[4]

print(color_1)
print(color_2)
print(color_3)
print(color_4)
print(color_5)

'color'라는 리스트에 더 많은 element가 있다면 이는 매우 비효율적인 과정이다

 

color= ['빨강', '주황', '노랑', '초록', '파랑']

for i in range(len(color)):
	globals()['color{}'.format(i+1)] = color[i]
    
print(color1)
print(color2)
print(color3)
print(color4)
print(color5)

for문 내에 globals()함수와 format()을 사용하면 매우 편리하게 변수를 생성할 수 있다

 

 

이는 리스트의 원소를 변수에 할당하는 것에 제한된 것이 아닌 데이터프레임에도 적용 가능하다

특정 변수의 value_counts()에 따른 각각의 데이터프레임을 만들때 매우 유용!

lst = list(df['특정변수'].value_counts())

for i in lst:
	globals()['data_{}'.format(i)] = df[df['특정변수'] == i]

 

 

 

'Python' 카테고리의 다른 글

05 Time_Series  (0) 2022.08.13
04 Apply, Map  (0) 2022.08.07
03 Grouping  (0) 2022.08.07
02 Filtering & Sorting  (0) 2022.08.07
01 Getting & Knowing Data  (0) 2022.08.07

+ Recent posts