본문 바로가기

나의 백과사전

변수 (variable)

출처: http://inventwithpython.com/chapter2.html


프로그래밍을 할 때 표현식으로 평가된 값을 나중에 사용할 수 있도록


저장해서 남겨두고 싶은 경우가 자주 생긴다. 이럴 때 변수 (variable)를 사용해서 값을 저장할 수 있다.


값을 보관하는 상자를 변수라고 생각하자. 그래서  = 기호(할당자(assignment operator)라고 부른다)를 사용해서


변수라는 상자 안에 값들을 저장할 수 있다.


예를 들어 'spam'이라고 이름 붙인 변수 안에 15라는 값을 저장한다고 하면


spam = 15 라고 입력하면 된다.


1
spam = 15




변수는 값을 보관하는 상자와 같다.


위 그림처럼 변수는 그 안에 15라는 값을 가지고 있는 상자와 같다.


그리고 'spam'이라는 변수 이름은 상자 위에 붙여진 라벨이고 그 안에 보관된 값은


상자 안에 있는 작은 메모지라고 생각할 수도 있다.

(대입문(assignment statement)라고 부른다)




한 개 이상의 변수 사용하기


프로그래밍을 하다 보면 하나 이상의 변수를 사용해야 하는 경우가 대부분이다. 여러 개의 변수를 사용해야 할 필요가 자주 생기는 데


이런 경우에는 어떻게 해야 하는지 다음처럼 eggs와 fizz라는 2 개의 변수에 서로 다른 값을 대입해보자.


1
2
>>> fizz = 10
>>> eggs = 15


이제 fizz 변수는 그 안에 10이라는 값을 가지게 되고 eggs라는 변수는 그 안에 15라는 값을 가지게 된다.


fizz와 eggs 변수는 각각 그 안에 서로 다른 값을 저장한다.

위에 나왔던 spam 변수의 값을 직접 변경하는 대신 spam 변수에 새로운 값을 대입해 보자.


1
2
3
4
5
6
>>> fizz = 10
>>> eggs = 15
>>> spam = fizz + eggs
>>> spam
25
>>>


spam = fizz + eggs 라고 하면 spam에 새로운 값이 저장되는 것을 볼 수 있다.

어떻게 이런 일이 일어났는지 이해 되는가?

변수 spam의 값은 현재 25 이다. 왜냐하면 fizz와 eggs를 더한다는 것은 결국 fizz와 eggs안에 저장된 값들을 더하는 것이기 때문이다.



프로그래밍은 엄격한 규칙을 가지고 정확하게 명령을 내려야 한다.

컴퓨터는 인간이 아니기 때문에 대강 말하면 스스로 알아서 새겨듣지 못하므로 아주 단순화된 명령어들만 인식할 수 있다.

여러분은  표현식을 통해 단일값을 가질 때까지 평가하는 방법을 배웠고 표현식은

2나 5와 같은 값과 + 나 - 와 같은 연산자들로 이루어진다는 것을 배웠다.

그리고 변수 안에 값을 저장해서 프로그래밍할 때 어떻게 이용하는지도 배웠다.