top of page

#1. 파이썬 기본 1 : 변수형

최종 수정일: 2022년 1월 25일


ree

#1-1. 변수란 무엇인가?

변수(variable)는 쉽게 이야기 해서, 프로그램이 돌아가는 동안 자료를 저장해 두는 공간에 대한 이름표라고


생각하시면 됩니다.


특정한 공간에 데이터를 저장하는 개념이라서 필요한 경우, 읽어오거나 수정할 수 있습니다.


프로그래밍에 있어서 이렇게 데이터를 저장해 놓을 수 있는 공간을 할당하고, 그에게 특별한

이름을 부여하는 과정을 '변수에 값을(또는 객체를) 대입한다'라고 표현합니다.


이 이름으로 우리는 특정 데이터에 접근할 수 있는 것이죠. 이를 일상생활에 빗대어 보면, 우리가 친구에게 전화를 할 때 내가 전화를 걸고자 하는 친구에게 연결할 수 있는 이유는, 전화번호에 그 친구가 '할당'되어 있기 때문이 아닐까요?

이때 전화번호는 중복이 없어야 하겠죠? 만약 하나의 번호를 여러 사람이 사용한다면 혼동이 일어날 것입니다.




a = b

프로그래밍에서는 데이터를 저장해 놓고 사용하는 개념이기 때문에 'a는 b다' 보다는, 'a에 b를 대입한다' 라는 느낌을 갖는 것이 중요합니다.





#1-2. 변수 선언과 문자열 대입

앞에서 다룬 변수를 선언하고 문자열을 대입하는 방법을 알아보겠습니다.


우선 '문자열(string)'이란, 문자나 단어 등으로 구성된 문자들의 집합입니다.


예를 들면, "a" , "20000" , "Pia Space" 등 문자, 단어, 숫자 등 따옴표로 둘러싸여 있다면,

모두 문자열이라고 볼 수 있습니다.




변수는 사용자가 사용하고 싶은 이름으로 만들어 입력하면 됩니다.


그리고 대입하고 싶은 문자열을 ' = ' 으로 연결해주면 됩니다.

여기서 '='는 우리가 알고 있는 등호가 아니라, '대입연산자' 또는 ''라는 프로그래밍 기호입니다.



>>> greeting_message = 'hello world'


예를 들어, 이렇게 코드를 입력했다면, 'greeting_message' 이라는 변수에,

'hello world' 라는 문자열대입연산자 '='을 통해 대입한 것입니다.


즉, '='을 입력해 줌으로써 문자열을 변수에 대입해 주는 것입니다.






#1-3. 변수 선언 규칙

앞에서는 변수를 선언하는 방법과 문자열을 대입하는 방법에 대해서 다루어 보았습니다.


그런데 Python에서는 변수를 선언하는 데에 있어 여러가지 규칙들이 있습니다.




'=' 기호를 사용해서 지정한 변수에 값을 대입합니다.


변수 이름공백, 특수 문자는 사용할 수 없습니다.

(공백의 경우, 언더 바 ' _ '로 이어줍니다.)


변수 이름숫자로 시작할 수 없으며, 언더 바 ' _ ' or '영문자' 로 시작해야 합니다.


변수 이름파이썬의 예약어를 사용할 수 없습니다. (for, while, if 등)


변수 이름에는 대문자를 사용하지 않는 것이 좋습니다. (파이썬의 권장 사항이며,

타개발자들이 코드 확인 시, 알 수 있도록 하는 개발자들 간의 무언의 약속입니다.)


변수영어로 명명합니다.




#1-4. 변수의 유효 범위(Variable Scope)

Python에서 변수는 그 선언된 위치에 따라서 해당 변수가 영향을 미치는 범위가 달라집니다.

이것을 '변수의 유효 범위(Variable Scope)' 라고 부릅니다.


변수가 함수의 내, 외부에서 선언되는 경우, 유효 범위에 따라 두 가지 종류로 나눌 수 있는데,

바로 '지역변수(Local variable)''전역변수(Global variable)'입니다.




지역변수(Local variable)


Python에서 '지역변수'란, 함수 내부에서 선언된 변수를 의미합니다.

함수 내부에서 선언된 지역변수는 일반적으로 해당 함수 안에서만 사용이 가능합니다.

함수가 호출되었을 때 생성되고, 함수가 끝나면 종료됩니다.



전역변수(Global variable)


Python에서 '전역변수'란, 함수 외부에서 선언된 변수를 의미합니다.

함수 외부에서 선언된 전역변수는 실행한 Python의 모든 함수에서 접근할 수 있으며, 모든 함수에서 'global' 키워드를 통해 재선언하여 전역변수를 변경할 수 있습니다.


지역변수가 없는 상황에서 'global' 키워드를 사용 시, 해당 변수는 전역변수가 됩니다.





즉, 지역변수는 함수 내부에서만 사용이 가능하며, 전역변수는 내,외부에서 모두 사용이

가능하다고 정리할 수 있습니다.



예를 들어보겠습니다.

집에 방 3개와 거실에 각각 wifi 기기가 한 개씩 있습니다. 방 3개에 있는 wifi 기기는 각각 L1, L2, L3 입니다. 거실에 있는 wifi기기는 G 입니다.


방에 있는 L 시리즈 기기들은 통신거리가 짧아서 그 방을 나가면 연결이 되지 않고,

거실에 있는 G 시리즈 기기통신거리가 길어서 집 전체에서 연결이 됩니다.


이렇다고 한다면, L 기기들은 각각 방 밖에서는 연결이 안되고, 방 안에서만 사용 가능합니다.

G 기기는 거실에서는 물론, 방 안에서도 사용이 가능합니다.


L1은 2번 방에서도 연결이 안될 것입니다. 마찬가지로 L3도 2번 방에서 연결이 안될 것입니다.

L2만이 2번 방에서 연결이 가능합니다.


지역변수와 전역변수도 이와 같습니다. 함수 안에서 선언한 지역변수해당 함수 안에서만 사용이 가능하며, 다른 함수에서 사용이 불가능합니다. 전역변수모든 함수와 함수 외부에서 사용이 가능합니다.


위 예시에서 집이 실행 중인 Python 프로그램이라고 한다면, 방은 함수, L 기기는 지역변수,

G 기기는 전역변수라고 생각하면 될 것 같습니다.


표로 정리해보면 이렇게 됩니다.


ree

이번 글에서는 이 정도에서 간단한 개념만 잡도록 하겠습니다.

후에 계속될 글에서 자세히 설명하도록 하겠습니다.




#1-5. 변수 출력 확인

우리가 변수에 넣은 값이 오류 없이 잘 들어갔는지 확인을 해보고 싶다면,

값을 출력해 보면 됩니다.


출력을 하기 위해서는 'print( )' 라는 함수를 사용하면 됩니다.

예를 들어, 우리가 'a=7'이라는 변수를 선언했고, 'print(a)'라는 함수를 입력하면,

'7'이 출력될 것입니다.


'7' 을 'a' 라는 변수에 대입해 달라고 선언했고, 'a' 라는 변수를 출력하는 함수를 입력했으므로,

'a' 출력 > 'a' 에 '7' 대입 이라는 과정을 거친다고 생각하면 쉬울 것 같습니다.



위에서 들었던 예문을 확인해 보겠습니다.



>>> greeting_message = 'hello world'

'greeting_message' 이라는 변수를 선언했고, 'hello world' 라는 문자열을 대입했습니다.




>>> print(greeting_message)


'print(greeting_message)' 즉, 할당한 변수를 출력하는 함수를 입력해주면?



ree

'Hello world' 가 정상적으로 출력된 것을 볼 수 있습니다.








'Visual Studio' 으로 코드 입력 후 간단하게 출력 하는 방법




새 파일을 열어줍니다


ree



텍스트 파일을 선택해줍니다


ree



언어 선택을 누릅니다


ree



'python' 입력 후, 선택을 해줍니다


ree



⑤ 출력하고 싶은 코드를 입력해줍니다. 코드를 다 입력 하셨다면, ' Ctrl + Shift + S '

눌러주세요. 그리고 바탕화면에 파일을 저장해줍니다.


ree



⑥-1 오른쪽 상단에 보이는 실행 버튼을 눌러줍니다.


ree



⑦-1 아래와 같이 값이 정상적으로 산출된 것을 확인할 수 있습니다.


ree



⑥-2 터미널 창에 ' python 파일명.py ' 를 입력해 줍니다.


ree



⑦-2 아래와 같이 값이 정상적으로 출력된 것을 확인할 수 있습니다.


ree

댓글


PIA 로고3.png

피아스페이스(주) ㅣ 대표자 : 유현수 ㅣ 사업자번호 :  802-87-02235ㅣ 통신판매업 : 2021-대구달성-0505
본사 주소 : 대구광역시 달성군 구지면 국가산단서로71길 129, 사무동 2층 203호 피아스페이스 사무실 (대봉산업(주) 본관)
서울 사무소 : 서울특별시 서초구 바우뫼로 41길 8, 정훈빌딩 303호 (양재동 4-12)

​개인정보보호책임자 : 이성준 ㅣ 문의 : contact@pia.space
피아스페이스 (주) © 2021 모든 권리 보유.

  • 카톡채널
  • 유튜브
  • 페이스 북 - 흰색 원

Copyright © PIA SPACE. All rights reserved.

bottom of page