파이썬/파이썬(python) 초급

[1-6 파이썬] 변수, variables

Olivia-BlackCherry 2022. 8. 3. 13:27

1. 변수의 뜻

변수의 뜻을 먼저 들여다봅시다. 

한글로는 변할 수 있는 수

영어로는 다양하게 존재할 수 있는 수

등으로 해석할 수 있겠네요.

 

결국 변수라는 것은 어떠한 값을 내가 임시로 지정해두는 것을 말합니다. 

 

2. 변수를 지정하면 편리하다.

예를 들어 학교에서 급식시간에 친구들에게 반찬을 나눠주는 일을 한다면,

그 친구를 부를 때

"점심 먹을 때 친구들에게 배식 도와주는 사람 나오자!"

라는 식으로 말하는 것보다

 

'급식도우미'라는 이름을 붙여주고,

"급식도우미 나오자"라고 하면,

 

그 과정이 간결해지고  뜻이 명확해집니다.

 

 

프로그램에서도 마찬가지입니다.

 

254625라는 숫자가 있지만 이것을 

a라는 변수에 저장한다면

a=254625 

앞으로는 a를 출력하면 254625가 나오는 거죠.

 

이런 간단한 예제에서는 변수의 효과를 알기가 어려운데,

만약

a= 24834792834723409982309482154613545487

라고 저장한다면

변수를 지정하는 편리성에 대해 더 느껴지시겠죠?

 

3. 변수 이름은 어떻게 설정하면 좋을까요?

사실 원하는대로 정하면 되지만..

 

뜻이 함축적으로 나타나있다면

코드를 읽어내려가는데 가독성이 있을 겁니다.

 

예컨데

a= input("너의 이름은?")

이라고 지정하는 것보다는

name= input("너의 이름은?")

이라고 지정하는 것이 코드를 해석할 때 더 좋을 것입니다.

 

4. 반드시 지켜야하는 규칙은?

- 띄어쓰기가 되지 않습니다. 

변수를 길게 적고 싶어 의미단위로 구분하고 싶다면 _ 를 이용합니다.

user_name (O)

user name (X)

 

- 숫자를 적고 싶다면 

문장의 맨 앞은 사용할 수 없습니다.

name1 (0)

1name (X)

 

- 특정한 단어는 변수 이름으로 사용하지 않습니다. 

input, print 같은 함수나 메소드의 이름은 사용하지 않는 것이 좋습니다.

간혹 오류를 일으키는 경우가 있기 때문입니다.

 

 

5. 변수 값 바꾸기 위해서는 제3의 변수를 지정한다.

변수의 값은 언제든 바뀔 수 있습니다.

만약

a=1, b=2의 값을

b=1, a=2 라고 바꾸고 싶다면 어떻게 해야할까요?

 

간단하게 생각한다면

b=a

a=b

라고 생각할 수 있지만 문제가 생깁니다..

 

print(a, b)를 해보면

값은 1,1이 나옵니다. 

 

왜냐면 b=a에서 b=1이고

a=b이므로 a=b=1 값이 되어버리기 때문입니다.

 

이같은 문제를 해결하기 위해서

제3의 변수를 지정합니다.

우선 c라는 새로운 변수에 a값을 할당한 후,
c=a

a값에 b를 부여하고
a=b

b값에는 이전의 a값과 같은 c값을 부여합니다.
b=c

 

그러면 원래의 a, b값이 바뀌어 출력됩니다!