본문 바로가기
Python/Python Basic

파이썬 기본 개념, 변수와 대입연산자(쉬움 주의)

by 워니 wony 2018. 11. 24.


파이참으로 파이썬 언어을 본격적으로 배우기 전에 프로그래밍에서 사용하는 개념들에 대해 알아보고자 한다.



보통 비전공자들이 가장 어려워하는 것이 프로그래밍에 대한 개념이다. 


용어부터가 생소 하다 보니 프로그래밍 책을 큰 맘먹고 펴보더라도 앞장만 잠깐 읽고 내려 놓게 된다.


객체지향 프로그램, 알고리즘, 객체생성, 클래스, 변수, 연산자, for문, while문 등등 이러한 설명을 읽고 나면, 분명 한국말로 된 책을 읽었는데, 아무런 이해가 되지 않는다. 


그리고 나서, 프로그래밍은 어렵다.


전공자가 아니라서 못 배우겠다고 생각하게 된다. 전공자 들도 처음에 몰랐던 개념이다 자주 듣고, 자주 사용하다 보니 자연스럽게 이해가 되게 되는 것이다. 


나도 비전공자이다 보니 처음에 이러한 용어때문에 머리가 아팠고, 같이 프로그래밍을 배우는 친구들도 이해가 하나도 안된다고 이야기 하기 일쑤였다.


그래서 최대한 쉽게 내가 이해했던 부분을 설명하고자 한다.

전공자나 관련 분야 전문가가 보기에는 이 쉬운 개념을 설명하는거야 라고 생각할 수 있지만 비전공자 입장에서 이러한 용어들은 가끔 외계어 처럼 느껴지니!




오늘은 프로그래밍 언어를 배우면 가장 많이 사용하는 것!

변수와 대입연산자에 대해 알아보겠다.



변수란 어떤 관계 범위 안에서 여러 가지 값으로 변할 수 있는 것을 말한다. 


쉽게 이야기 하면 박스(a)가 있는데 그 안의 물건이 계속 달라 질 수 있는 것이다.

내가 박스안에 핸드폰을 넣으면, 핸드폰을 넣은 박스가 되는 것이고, 그 이 후 핸드폰을 꺼내고 사과를 넣으면, 사과를 넣은 박스가 되는 것이다.


이렇게 다양한 것을 담을 수 있는 값을 변수라고 이야기 한다.

변수가 뭔지 감이 잡혔다면, 보통 책에서 정의하는 프로그래밍 변수에 대해 써보겠다.


프로그램 수행 중에 발생하는 데이터를 메모리에 저장하기 위한 기억장소가 필요한데 그 기억장소를 확보하기 위해서 변수를 이용한다. (어렵게 느껴진다면 그냥 읽어보고 넘어가도 됨, 프로그래밍 언어를 배우다 보면 저절로 이해 된다.)




변수 이름 만드는 조건


보통 변수는 영문 또는 숫자를 넣어 의미 있는 이름을 지어 준다. 오늘은 아래 처럼 쉽게 a라고 써보겠다. 

위와 같은 식에서 a를 변수라고 이야기 한다. a가 아니라 b라고 해도 되고, name 이라고 해도 되고, number라고 해도 된다. 변수는 개발자가 만드는 것이기 때문에 개발자가 담고 싶은 것에 따라서 이름을 정한다. 


지금은 편하게 a라고 지었다. 하지만 a가 뭘 의미하는 변수인지 알기 어렵다. 프로그램을 만들다 보면 변수를 참 많이 만들게 된다. 그때마다 그냥 쓰기 편하게 a,b,c,d... 이런식으로 쓰다보면 나 말고 다른 사람은 해당 변수가 뭘 담고 있는지 알기 어렵다. (나중에는 나도 헷갈린다)


그렇기 때문에 보통은 프로그램을 개발할 때 변수명은 의미있는 이름을 짓는다. 사람들의 이름을 담는 변수라면 name 이런식으로 변수를 쓰게 된다. 변수명만 보더라도 그 안에 무엇이 담겨 있는지 유추가 가능하도록 정하는 것이 좋다.


그리고, 변수는 이름을 잘 못 만드는 경우 프로그램에서 변수의 역할을 제대로 하지 못하고 오류가 발생하는 경우가 있다. 그렇기 때문에 아래의 변수 이름 만드는 조건은 기억해 놓는 것이 좋다.



변수 이름 만드는 조건


1) 영문자, 숫자, 언더바(_)를 쓸 수 있다.

ex) name, name2, name_boy


2) 첫글자는 반드시 영문으로 시작해야 한다.


3) 공백을 포함 할 수 없다.

     ex) name boy는 불가능!


(참고로 파이썬에서 한글 변수명이 가능하지만 권장하지 않는다.)


 


대입연산자란?

a = 2라는 식에서 =은 무엇일까? 

우리는 학교에서 수학을 배웠기 때문에 =은 같다 라고 생각하는 경우가 많다.

일반 적으로 =은 무엇인가 라고 하면 같다는 뜻이라고 이야기한다.


하지만, 프로그래밍 언어에서 =는 같다라는 뜻이 아니라 대입한다는 뜻이다.

a에 2를 넣는것!

만약 a와 2가 같다고 하려면 a==2라고 써야 한다.


그래서 =(대입연사자) 왼쪽에 있는 변수 a에 2을 대입한다는 것이다.

만약 2 = a라고 쓰면 오류라고 한다. 


숫자 2에 a를 넣을 수는 없다!

숫자 2는 변하지 않는 수이기 때문이다.

(복잡하다... 라고 생각할 수 있다 하지만 자주 보다보면 쉽게 이해 된다!)



만약 아래와 같은 수식이 있다면 프로그램에서 b를 출력하면 뭐라고 뜰까?


a = 2

b = a





b는 숫자 2를 담게 된다! 변수 a에 숫자 2가 담기고, 변수 b에 a가 담기면서 b는 지금 숫자 2를 담고 있게 된다.



지금 위에서 이야기한 것만 이해해도 프로그래밍을 하면서 변수와 대입연사자를 쉽게 사용할 수 있다.


다음 포스팅에서는 변수를 활용할 수 있는 대입연산자 이외의 연산자에 대해 알아 보자!



반응형

댓글