Develop/Python

변수와 자료형 - 변수

YOOZI. 2025. 1. 1. 00:59
728x90
변수? 변하는, 변동성이 있는 수를 말하는 건가?

 

 

 

오늘은 파이썬의 기본 개념인 변수의 개념과 사용 방법에 대해 알아보자.

오늘의 배움
  • 변수의 개념과 생성 방법
  • 대입 연산자의 이해
  • 변수 이름 명명 규칙

 

변수란?

변수는 프로그램에서 다루는 어떤 자료(정보)를 담는 공간이다. 

예를 들어, 친구의 이름을 저장하는 공간이라고 생각하면 쉽게 이해할 수 있다.

 

변수 생성 방법

변수명 = 자료

 

(좌항)에는 변수의 이름, (우항)에는 변수에 담을 자료를 작성한다. 

파이썬은 변수의 자료형을 선언할 필요가 없어서 유연하게 사용할 수 있다.

# 친구의 이름을 담는 변수 생성
friend_name = "다람쥐"
print(friend_name)  # 출력: 다람쥐

# 변수의 값을 변경하는 것도 같은 방식으로 가능
friend_name = "오지라퍼스"
print(friend_name)  # 출력: 오지라퍼스

 

대입 연산자

대입 연산자 =는 우항의 값을 좌항의 변수에 대입하는 역할을 한다.

# 좌항은 변수명, 우항은 원시 문자열로 표현된 자료
team_name = "ohgiraffers"

# 좌항은 변수명, 우항은 team_name 변수에 담긴 값
my_team = team_name
print(my_team)  # 출력: ohgiraffers

 


변수 이름 명명 규칙

1. 변수명은 변수에 담긴 값이 무엇인지 직관적으로 알 수 있게 작성해야 한다.

    예를 들어, 키 정보를 담을 경우 height와 같은 변수명을 사용하는 것이 좋다.

# 키(cm) 정보를 변수에 담아보세요
height = 207.3  # 좋은 예
a = 171.8       # 나쁜 예 (의미가 불분명)

 

2. 변수명은 스네이크 케이스(소문자+언더바)로 작성하며, 대소문자를 구별한다. 

    따라서 team_name과 Team_name은 서로 다른 변수로 인식된다.

team_name = "오지라퍼스"
print(team_name)  # 출력: 오지라퍼스

Team_name = "Ohgiraffers"
print(Team_name)  # 출력: Ohgiraffers

 

3. 한글 변수명도 사용할 수 있지만, 인코딩 문제로 사용을 지양하는 것이 좋다.

우리팀 = "오지라퍼스"
print(우리팀)  # 출력: 오지라퍼스

 

 

문법 오류를 야기하는 규칙

  1. 변수명은 숫자를 첫 글자로 사용할 수 없다.
  2. 언더바(_)를 제외한 특수 문자는 사용할 수 없다.
  3. 파이썬 예약어는 변수명으로 사용할 수 없다.
team_1_name = "오지라퍼스"  # 올바른 예
# 1_team_name = "오지라퍼스"  # 오류 발생
# team_@_name = "오지라퍼스"   # 오류 발생
# else = "오지라퍼스"          # 오류 발생

파이썬의 언더스코어 (_)

1. 언더스코어는 특별한 기능을 제공한다. 마지막으로 실행된 값을 저장할 때 사용되며, 이 값을 연산에 활용할 수 있다.

10
print(_)        # 10
print(_ * 3)    # 30

 

2. 값을 무시하고 싶을 때 특정 값을 무시하기 위한 용도로 사용할 수 있다.

x, _, z = (1, 2, 3)
print(x)    # 1
print(z)    # 3

 

3. 변수나 함수명에 특별한 의미 또는 기능을 부여하고자 할 때 사용할 수 있다.

  • 변수, 함수, 클래스, 메소드를 선언할 때 _로 시작하는 것들은 import에서 무시된다.
  • 파이썬은 private를 지원하지 않고 있지만, 위와 같이 사용함으로써 private 선언 컨벤션처럼 쓸 수 있다. (하지만 private과 동일한 기능을 하는 것은 아니므로, import에서는 무시되지만 직접 가져다 쓰는 등 호출은 가능하다.)
_internal_name = 'one_module'  # private 변수처럼 선언
_internal_version = '1.0'      # private 변수처럼 선언

 

4. 숫자 리터럴 값의 자릿수 구분을 위한 구분자로 사용할 수 있다.

   (Python 3.6 에서 추가된 문법으로, 언더스코어를 이용해 자릿수를 구분할 수 있다.)

million = 1_000_000
print(million)    # 1000000

 

5. 파이썬 키워드, 모듈명 충돌을 회피하기 위해 마지막에 _를 붙여줄 수 있다.

for_ = 'for blah'
print(for_)

 

6. 스폐셜 변수, 매직 메소드 등에 사용하기도 한다.

class _A:
    def __init__(self):
        self.__foo = 'foo'
        self.bar = 'bar'
    
    def foo(self):
        return self.__foo
    
    def _good_morning(self):
        return self.bar * 10
    
    def hello(self):
        return self._good_morning()
a = _A()
a.__init__
a.__str__
a.__eq__    # a == b라는 식이 수행될 때 실행되는 스페셜 메서드

 


 

 

변수는 마치 디자인에서 레이어처럼, 정보를 담고 있는 그릇의 역할을 한다. 각 레이어가 서로 다른 정보를 담고 있듯, 변수도 다양한 자료를 저장할 수 있는 것이다.

 

변수명 짓기와 자료형에 대한 규칙을 잘 지켜야 코드가 잘 작동한다는 것을 깨달았다. 

다음 시간에는 '기본 자료형'에 대해 알아보자.

728x90

'Develop > Python' 카테고리의 다른 글

변수와 자료형 - 기본 자료형  (3) 2025.01.01
VScode 알아보기  (0) 2024.12.30
JupyterNotebook 알아보자  (0) 2024.12.30
개발환경 구축 - 가상환경(Anaconda) 설치  (0) 2024.12.29
Python 파이썬이란 무엇인가?  (0) 2024.12.29