기본 콘텐츠로 건너뛰기

[matplotlib] 등고선(Contour)

[python] 변수와 상수

변수와 상수

대부분의 컴퓨터 언어에서는 입력하는 값을 수정 가능과 불가능한 상태로 구분합니다. 각각을 변수와 상수로 나타내면 다음과 같은 특성을 가집니다.

  • 변수
    • 메모리에 할당된 데이터를 참조하기 위한 이름입니다.
    • 변수의 내용은 수정이나 치환이 가능합니다. 실제로 참조경로가 수정되는 것입니다.
  • 상수
    • 변수와 같지만 수정이나 치환되지 않습니다.

변수나 상수에 값을 할당하기 위해 할당연산자인 '=' 를 사용합니다.

다음 코드들은 값을 참조하는 객체를 생성하는 것으로 이름 객체의 경우 참조하는 객체의 위치를 수정함으로서 값의 수정이 이루어집니다. 이러한 의미에서 파이썬에서 생성하는 객체는 변수입니다.

x="apple";x
'apple'
x=32 
x
32

여러 변수에 각 값을 동시에 할당할 수 있습니다.

a, b, c=5, 3.14, "Python"
a
5
b
3.14
c
'Python'

대부분의 컴퓨터 언어에서는 변수와 상수를 선언할 경우 변수/상수임을 함께 선언하는 것에 반해 파이썬은 이러한 선언 문법이 존재하지 않습니다. 그러나 프로그램 전체에서 고정적으로 사용하는 값(상수)들이 필요할 경우 별도의 파일을 작성하고 이 파일을 가져오기(import) 하여 상수를 생성합니다.

다음 코드는 일정한 수준에서 반올림한 π 값을 상수로 사용하기 위해 파이썬 파일(contant.py)을 작성한 후 모듈로 임포팅하여 사용한 예입니다(모듈과 임포팅 참조). 작업 중에 값을 임포팅된 값을 수정하더라고 원시파일(raw file)의 그 값은 변경되지 않습니다.

import constant
pi=constant.PI
pi
3.14
constant.PI=3.1
constant.PI
3.1

사용중인 인터프리터에 한번 호출한 모듈은 그 모듈을 다시 호출해도 이전의 내용을 유지합니다.

패키지 imp의 reload() 함수를 사용하여 업데이트된 모듈을 다시 임포트할 수 있습니다.

import imp 
imp.reload(constant)
constant.PI
3.14

댓글