본문 바로가기
Python/Coding Base

2. 변수

by Nanki 2022. 1. 5.

변수 하면 떠오르는 것

통계가 더 친숙한 내 입장에서 변수 하는 순간 표본 공간을 가지는 확률 실험에서 각 원소의 실수에 대응하는 함수인 확률변수(random variable)가 먼저 떠오른다. 하지만 python에서의 변수(variable)는 다른 뜻이다.

 

Python에서의 변수는 단순히 값을 저장하는 공간이다.

  • 저장했기에, 필요할 때 꺼내 쓸 수 있고, 저장된 값은 언제든지 다른 값으로 바뀔 수 있다. (ex. 엑셀의 저장 기능)
  • 저장하는 공간은 메모리를 가지며 변수는 이 메모리에 생성된다.

 

Python에서 변수 생성 과정

변수의 이름을 정하고 등호(=)를 사용하여 값을 저장한다. 

  • = 연산자는 같다의 수학적 의미가 아니라 변수에 값을 저장한다는 의미이다.
  • = 가 존재하는 문장(변수에 값을 저장하는 문장)을 할당문(assignment statement) 또는 대입문이라고 칭한다.
score = 20

 

Python의 자료형(data type)이란?

  • 데이터의 종류를 의미하며 자료형은 값과 연관되고 변수와는 연관되어 있지 않는다. 따라서 파이썬에서는 변수에 어떤 자료형의 값이든지 저장할 수 있다.
    • 이는 파이썬에서 모든 것이 객체(object)로 되어 있기 때문이다. 변수에 저장되는 것은 실제로 객체의 주소여서, 객체이기만 하면 뭐든지 변수로 가리킬 수 있다.

객체란 무엇인가?

 

a=3
b=a
c=a
a="hellow"

 

위의 파이썬 코드에서 a,b,c는 변수이다.

  • b, c의 객체 : (type : int, 값 : 3)
    • 저장소인 변수 a의 객체의 주소가 변수 b, c에 저장됨. 따라서 변수 b, c를 실행하면(객체의 주소가 저장된 저장소의 값을 끄집어 내면) 3이라는 값이 나온다.
  • a의 객체 : (type : string, 값 : hello)
    • 객체의 주소가 저장소인 변수 a에 새로운 값인 hellow의 주소가 저장됨. 따라서 a를 실행하면(저장소의 값을 끄집어내면) hello라는 값이  나온다.

 

파이썬에서 저장 가능한 수(number)는?

  • 정수(integer) : 소수점이 없는 수
  • 실수(floating-point) : 소수점이 있는 수

실수를 변수로 만들 수 있을까?

1=x

이와 같이 입력했다고 했을때 실행 결과는 어떻게 될까?

> SyntaxError : can't assign to literal

변수 x에 1은 대입 가능하나, 1에는 x를 대입할 수 없다.

 

변수이름의 규칙

  • 의미 없는 이름을 사용하는 것보다는 의미 있는 이름을 사용하는 것이 바람직하다.
    • 참고로 변수 이름을 대신 지어주는 사이트가 존재 합니다. 참고하시기 바랍니다
  • 소문자와 대문자는 서로 다르게 취급 된다.
  • 변수의 이름은 영문자와 숫자, 밑줄(_)로 이루어 집니다.
    • 변수 이름 중간에 공백이 들어가면 안되며, 단어 구분시 밑줄(_)을 사용해야 합니다.
  • Tip : 개발자들은 변수의 이름을 지을 때, 낙타체를 많이 사용합니다.(myNewStudent) 나머지 단어들의 첫 글자는 대문자로 표기 합니다.
# 올바른 예
value
_account
kingsman2

# 잘못된 예
2wo_ago
@_@

 

 

※본 글은 인프런 강의의 <파이썬(Python) 기초부터 실무까지 part.1> 강의를 듣고 2차 가공하였습니다. 

'Python > Coding Base' 카테고리의 다른 글

5. 조건문  (0) 2022.01.10
4. 자료형  (0) 2022.01.06
3. 상수(constant) 그리고 수식(expression)과 연산자, 함수  (0) 2022.01.06
1. python의 기본 구조  (0) 2022.01.05
파이썬 정리를 시작하며  (0) 2022.01.05