본문 바로가기
python/python 해보자

python 해보자[3] = 변수

by 야호호코코 2025. 2. 9.
반응형

1. 변수란 무엇인가?

 수학을 배운 적이 있다면, 방정식을 풀 때 x = 3, y = 5와 같이 대입을 해서 푼 적이 있을 것이다. 그러면 나중에 방정식의 x가 나타나면 그 자리에는 3을, y가 나타나면 그 자리엔 5를 넣어서 수식을 풀어나갔을 것이다. 파이썬에서의 변수도 그것과 다르지 않은 개념이다. 간단한 코드로 확인해보자.

x = 3
y = 5
word = "단어"
sentence = "이것은 긴 문장입니다!"

 

 파이썬에서 변수를 선언하는 방법이다. 변수명 = 대입할 값이라는 직관적인 문법으로 변수 선언이 가능하다. 우리가 수학에서 풀었던 그것과 같다. 다른 언어였다면 변수명 앞에 이 변수가 무슨 자료형인지 명시해줘야 하지만, 파이썬은 뒤에 대입할 값에 따라 자동으로 자료형이 설정된다. 

 

 수학에서는 수식이나, 수를 변수에 대입하지만 프로그래밍의 세계에서는 이와 더불어 문자, 문자열, 배열까지 모두 대입할 수 있다. 

 


2. 변수 선언, 사용 시 주의사항

 우선, 변수를 선언할 때의 주의사항으로는 이름을 잘 지켜야한다는 점이 가장 중요하다. 다음의 규칙을 지켜 변수명을 지어야한다.

 

 1. 숫자로 시작해서는 안된다.

 2. _ (언더바)를 제외한 특수문자는 들어가서는 안된다.

 3. 파이썬에서 사용되는 특정 키워드와 동일해서는 안된다. (def, if, elif, else, for 등..)

 

 위 규칙에 어긋나는 변수를 만들게 되면, 에러가 나면서 실행이 안될 것이다. 그렇다면, 직접 생성이 가능한 변수명과 그렇지 못한 것을 찾아보자.

 

연습문제. 다음 변수명 중 생성이 불가능한 변수명을 모두 찾으시오.

abc = 1			# 1번
bc de = 2 		# 2번
_var = 3		# 3번
4_var = 4		# 4번
if = 5			# 5번
var+name = 6	# 6번
var___name7 = 7	# 7번

정답

더보기

정답

2번) 변수명에 공백은 들어갈 수 없습니다.

4번) 변수명은 숫자로 시작할 수 없습니다.

5번) if는 키워드이므로 사용할 수 없는 변수명입니다.

6번) 언더바를 제외한 특수문자는 변수명으로 사용 불가능합니다.


3. 변수의 사용 방법

 변수는 선언이 이루어져야 사용이 가능하다. 여기에서 변수를 사용한다는 것은, 중간의 변수의 값을 바꿔 대입해주는 것, 변수를 이용해 연산을 하는 것, 변수를 출력하는 것 등 변수를 활용할 수 있는 모든 행위를 말한다. 

print(my_var)
print("출력될까?")

 

 상식적인 일이다. 값을 대입해주지도 않은 변수를 불러서 출력한다고 해보자. 가능할까? 불가능하다.

 

 그리고 부가적으로 이 글을 보는 초보 프로그래머들이 지켜줬으면 하는 것, 변수명을 보았을 때 이 변수가 어떠한 정보가 저장되어 있는 지 바로 파악할 수 있도록 작명하는 것 또한 중요하다.

 다음의 상황을 예로 들어 어떻게 코드를 구성할 지 생각해보자.

 

상황 

 코린이 편의점의 재고 관리를 위해 제로콜라의 가격과 개수를 저장하고, 출력하려고 한다. 

 

 위와 같은 상황에서, 초보자들은 단순하게 구성할 수 있을 것이다.

a = 1800	# 선언
b = 300		# 선언

print("제로콜라")
print("가격 :", a, "개수 : ", b)	# 출력

 

 "a는 제로콜라의 가격이고, b는 제로콜라의 개수야!" 라고 생각하며 만들었겠지만, 만약 3일 뒤에 이 코드를 보고 그 생각이 바로 나올 수 있을까? 바로 파악의 기준은 남에게 설명 없이 코드를 보여주더라도 바로 파악할 수 있는 정도를 말한다. 그렇다면 어떻게 수정해야할까? 변수에 저장되는 값을 기준으로 적절하게 작명을 하는 것이다!

 

cola_price = 1800
cola_count = 300

print("제로콜라")
print("가격 :", cola_price, "개수 :", cola_count)

 

 이렇게 변경 된다면, 별다른 설명 없이도 변수명만으로 이 변수에는 어떠한 정보가 저장되어있는지 단번에 파악이 가능하다. 물론, 꼭 저렇게 쓸 필요는 없다. 자신만의 방법으로 이 변수를 잘 표현할 수 있다면 어떻게 작명을 하든 상관 없다. 앞서 말했 듯이, 변수명은 작명 규칙 안에서 자유롭게 작성하면 된다. 누군가는 price, count로, 또 누군가는 zeroColaPrice, zeroColaCount로 표현할 수 있다. 하지만 모두가 "이 변수 안에는 콜라의 가격과 개수가 들어있군!"이라고 유추할 수 있다!

 

 변수명의 작명 센스를 처음에 길러놓지 않으면, 나중에 조금 힘들어질 수 있다. 지금 이 말을 하는 필자 역시도 고등학교 시절 처음 배울 때 변수명 a, b, c, d, e... 이렇게 해놓고 실습할 때는 규모가 작으니까 그 값들의 용도를 다 외웠지만, 시험에 들어가면 난해해져 실수를 많이 범할 때가 잦았다. 그러고나서 값에 맞게 이름을 바꾸는 습관을 들이는 데 또 한참이 걸렸다. 내가 느렸던 것일 수도 있지만, 처음 몸에 밴 습관이 가장 무섭다. 

 

4. 정리

 오늘은 변수가 무엇인지, 변수를 선언, 사용하는 예시와 이에 필요한 주의사항과 팁에 관해 배웠다. 내용이 길지만 결국엔 수학시간에 배운 변수와 크게 다를게 없다는 점을 기억하고, 꼭 변수명 작명 규칙은 숙지하도록 하자!

반응형