본문 바로가기
SK 행복성장캠퍼스/Python 기초

0831_1일차_Python02_변수1_기본

by NickNuma 2020. 9. 2.

변수, 변화하는 수. 고정되지 않은 수.
변수에 데이터(값)을 대입하여 작업을 합니다.


변수명 = 데이터     <-- 이렇게 변수에 값을 대입합니다.
            데이터에는 기본형, 집합형 등의 모든 데이터 값이 올 수 있습니다.
변수명의미있는 명사형으로 지정하여 알아보기 편하게 합니다.

"""
    변수 사용
    목적 : 데이터 저장
    문법 (syntax) 1:
        변수명 = 데이터

            * 데이터 위치에 올 수 있는 값 = 기본형, 집합형 등의 모든 데이터 값이 올 수 있다.
        변수명은 의미있는 명사형으로 지정하는 것을 권장한다. (모두 소문자로 지정하는 것을 권장)

        특징 : - 값을 변경할 수 있다.
              - 변수는 참조값(주소값)을 갖는다.
                즉, 실제값이 저장된 위치값을 갖는다.
                주소값은 id(변수명) 함수 이용,  주소값은 그때그때 빈 메모리 공간에 따라 달라짐 (내 생각, 찾아보자)

    * 파이썬의 데이터 종류 1
        1) 기본형
        2) 집합형
    * 파이썬의 데이터 종류 2
        1) 실제값  :   기본형 및 집합형
        2) 주소값  :   id(변수명)

"""

id() 함수변수의 주소값을 찾을 수 있습니다.

파이썬의 데이터기본형과 집합형으로 나눌 수 있지만
             또 다른 개념으로는 데이터의 실제값과, 주소값으로 나눌 수도 있습니다.


 


변수의 기본 활용을 보여주는 예제입니다.
기본형과 집합형 데이터를 사용하여 변수에 값을 대입해줍니다.
뿐만 아니라 딕셔너리에 내에 딕셔너리를 넣어 2중 딕셔너리로 사용할 수 있으며
                리스트 역시 데이터이기 때문에 딕셔너리 내 value 값으로 넣을 수 있습니다.

# 1. 변수

name = "홍길동"      # 집합형의 문자열
age = 10            # 집합형의 정수
height = 185.4      # 기본형의 실수
gender = "Male"     # 집합형의 문자열
isMarried = False   # 기본형의 논리
email = ["hong@gamil.com", "hong@naver.com"]    # 집합형의 리스트
pets = {
    "강아지" :{"이름" : "멍멍이", "나이" : 2 },  # 집합형의 딕셔너리 (2중 딕셔너리 - 딕셔너리도 데이터이기 때문에 사용 가능)
    "고양이" : {"이름" : "야옹이", "나이" : 1},
    "거북이" : [1,2,3,4]   # 집합형의 리스트 (딕셔너리 내의 리스트 - 리스트도 데이터 값이라서 사용 가능)
}                         

print("1. 이름 :", name)
print("2. 나이 :", age)
print("3. 키 :", height)
print("4. 성별 :", gender)
print("5. 결혼 여부 :", isMarried)
print("6. 이메일 :", email)
print("7. 애완동물 :", pets)

위 코드를 실행한 콘솔 창의 모습입니다.


 


변수는 값을 변경할 수 있습니다. (mutable, 당연한 얘기죠;;; 변하는 수니까. ㅎㅎ;;;)

고로 정수 10의 값이 들어있던 age라는 변수에 다시 11이라는 정수값을 주어 값을 변경시킬 수 있습니다.
데이터형에 상관없이 int, float, bool, str, tuple, list 등 변수에 입력된 모든 값이후 변경 가능합니다.

# 내년
age = 11
print("8. 변경된 나이 :", age)
isMarried = True
print("9. 결혼 여부 :", isMarried)

위 코드를 실행한 콘솔 창의 모습입니다.
데이터가 변경되었고 변경된 데이터가 잘 출력되었습니다.


 


변수는 데이터의 실제 값데이터의 값이 들어있는 주소의 값을 갖습니다.
          변수의 데이터가 들어있는 주소의 값을 알기 위해서는 id() 함수를 사용합니다.. ==> id(변수명)
          id()함수로 찾은 주소 값Run할 때마다 달라지는데 그때그때 빈 메모리 공간에 따라 데이터가 삽입된 주소가 달라지기 때문입니다.

"""
	변수
		특징 :
               - 변수는 참조값(주소값)을 갖는다.
                 즉, 실제값이 저장된 위치값을 갖는다.
                 주소값은 id(변수명) 함수 이용,  주소값은 그때그때 빈 메모리 공간에 따라 달라짐 (내 생각, 찾아보자)
                 
    * 파이썬의 데이터 종류 1
        1) 기본형
        2) 집합형
        
    * 파이썬의 데이터 종류 2
        1) 실제값  :   기본형 및 집합형
        2) 주소값  :   id(변수명)        
"""                

# 변수의 주소값 출력
print(name, id(name))
print(age, id(age))
print(height, id(height))
print(gender, id(gender))
print(isMarried, id(isMarried))
print(email, id(email))
print(pets, id(pets))

위 코드를 실행한 콘솔 창의 모습입니다.


 


동일 이름의 변수중복 선언이 가능합니다.

# 동일 이름으로 중복 선언이 가능하다.
n = 10
print(n)
n = 30
print(n)
n = 50
print(n)

위 코드를 실행한 콘솔 창의 모습입니다.


 

변수의 기본 설명은 여기서 마무리하고 다음에 python에서 변수에 동시할당하는 법과 typechecker에 대한 이야기를 해보도록 하겠습니다.

그럼 이만~~

반응형

댓글