파이썬(Python)_변수

Youngboy_Engineer·2021년 7월 11일
0

파이썬(Python)

목록 보기
2/8
post-thumbnail

1. 변수

변수란?

  • 어떠한 을 저장하는 그릇
  • 값을 저장할 때 사용하는 식별자
    변수명 = 값
>>> num = 10 # 정수형 변수
>>> str = "홍길동" # 문자열 변수
>>> lst = [1,2,3] # 리스트 변수
  • 변수의 자료형을 확인하는 방법
    - type() 함수를 사용
>>> type(num)
<class 'int'> # 정수형 변수
>>> type(str)
<class 'str'> # 문자열 변수
>>> type(lst)
<class 'list'> # 리스트 변수

변수는 하나의 자료형만을 사용할 것을 권장함!

  • 변수명은 문자 / 숫자 / _ 로 만들 수 있음
  • 숫자로 시작하는 변수는 만들 수 없으며,
    대소문자는 꼭 구분해야 한다!

  • 파이썬에서 유효한 변수명 & 예약어로 사용할 수 없는 변수명 (↑이미지 출처 : SW Expert Academy)

  • 변수와 객체
    >>> var1 = 10 # var1은 변수 / 10은 객체
    >>> var2 = 10
    >>> var1 is var2
    True
    >>> var3 = 20
    >>> var1 is var3
    False



2. 변수와 자료형

Bool

  • 참, 거짓을 판단하는 표현식에 사용하는 자료형
  • True | False 값을 가짐
  • 관계 연산자, 논리 연산자를 사용하는 표현식이 Bool 값을 반환함
>>> x, y = 10, 20
>>> x
10
>>> y
20
>>> x < y
True
>>> x < y
False
>>> under18 = False
>>> male = True
>>> under18 and male
False
>>> if under18:
	print("미성년자입니다.")
    else:
    	print("성년입니다.")
성년입니다.

Tuple

  • ( )괄호 안에 서로 다른 자료형의 값을 콤마(,) 로 구분해 하나 이상을 저장할 수 있는 컬렉션 자료형
  • 0부터 시작하는 인덱스를 이용해 접근
  • 한번 저장된 항목은 변경할 수 없음
>>> student = ('홍길동', 20)
>>> student = '홍길동', 20 # 위 코드와 동일
>>> student
('홍길동', 20)
>>> student = ('홍길동', 20)
>>> student[0]
'홍길동'
>>> student[1]
20
>>> student[2] # IndexError 발생
>>> student = ('홍길동', 20)
>>> student[1] = 21 # TypeError 발생 / 튜플은 한번 저장된 값을 변경할 수 없기 때문임.
>>> student = "임꺽정", 30
>>> student
('임꺽정', 30) # student는 변수이므로 새로운 튜플 객체를 참조하는 것은 문제 X



List

  • [ ] 안에 서로 다른 자료형의 값을 콤마(,)로 구분해 하나 이상 저장할 수 있는 컬렉션 자료형
  • 0부터 시작하는 인덱스를 이용해 접근
  • 한번 저장된 항목도 변경이 가능! (튜플과의 차이점)
>>> student = ['홍길동', 20]
>>> student
['홍길동', 20]
>>> student[0]
'홍길동
>>> student[1]
20
>>> student[2] # IndexError 발생
>>> student = ['홍길동', 20]
>>> student[1] = 21
>>> student
['홍길동', 21] # 튜플과 달리 항목의 값 변경 가능
>>> student = ['임꺽정', 30]
>>> student
['임꺽정', 30] # student가 변수이므로 새로운 리스트 객체 참조 가능 



Set

  • { }안에 서로 다른 자료형의 값을 콤마(,)로 구분해 하나 이상 저장할 수 있는 컬렉션 자료형
  • 순서의 개념이 존재하지 않아 인덱스 사용 불가
  • 데이터 항목의 중복을 허용하지 X
>>> student = {"홍길동", "이순신", "강감찬", "홍길동"}
>>> student
{"홍길동", "강감찬", "이순신"} # 두번 사용된 "홍길동"은 중복을 허용하지 않기 때문에 하나만 입력
>>> len(student)
3
>>> student[0] # TypeError 발생 / Set은 개별 항목에 접근 불가
>>> student = {"홍길동", "이순신", "강감찬", "홍길동"}
>>> student |= {"을지문덕", "이순신"} # | 합집합 연산자
>>> student
{"강감찬", "홍길동", "이순신", "을지문덕"}
>>> student = {"홍길동", "이순신", "강감찬", "홍길동"}
>>> student = {"임꺽정", 30}
>>> student
{"임꺽정", 30} # student가 새로운 Set 객체를 참조



Dictionary

  • { }안에 키:값 형식의 항목을 콤마(,) 로 구분해 하나 이상 저장할 수 있는 컬렉션 자료형
  • 키를 이용해 값을 읽어 올 수 있음
  • 항목 추가 시
    1) 동일키 O : 저장된 항목 면경
    2) 동일키 X : 새로운 항목 추가
>>> dogs = {1: "골든리트리버", 2: "진돗개", 3: "보더콜리"}
>>> dogs
{1: "골든리트리버", 2: "진돗개", 3: "보더콜리"}
>>> dogs = {1: "골든리트리버", 2: "진돗개", 3: "보더콜리"}
>>> dogs[1]
'골든리트리버'
>>> dogs[2]
'진돗개'
>>> dogs[3]
'보더콜리'
>>> dogs[4] # KeyError 발생
>>> dogs[2] = '레브라도리트리버'
>>> dogs
{1: "골든리트리버", 2: "레브라도리트리버", 3: "보더콜리"} # 동일키가 있기 때문에 저장된 항목을 변경
>>> dogs["4"] = "알래스카말라뮤트"
>>> dogs
{1: "골든리트리버", 2: "레브라도리트리버", 3: "보더콜리", '4': "알래스카말라뮤트"} # 동일키가 없기 때문에 새로운 항목으로 추가
>>> dogs[4] # KeyError 발생
>>> dogs["4"]
'알래스카말라뮤트'
>>> dogs = {}
>>> dogs
{}



None

  • None 객체를 이용해 널(null)객체 상태를 표현함
  • 널(Null) 이란? 객체가 존재하지 않는 상태

🤷‍♂️ 파이썬에서는 최초 변수를 선언할 때 초기화 하지 않으면 에러가 발생함!
초기화값을 제공하지 않을 경우엔 None 객체 저장 필요

>>> obj # NameError 발생
>>> obj = None
>>> obj is None
True
>>> obj == None
True
# 동일한 '값'을 검사하는 == 연산자보다 동일 '객체' 여부를 검사하는 is 연산자 사용 권장
>>> obj = None
>>> if obj: # obj가 None 이므로 False로 평가
	print("obj는 None 이 아닙니다.")
    else:
    	print("obj"None 입니다.")
obj는 None입니다.




3. 변수의 생성 및 제거

  • 변수를 생성하고 초기화하는 방법
    " = " 활용
  • 변수의 제거
    - Garbage Collector
    • 객체가 사용한 메모리 공간을 자동관리
    • 개발자가 메모리 관리를 직접할 필요 X
  • del( )함수로 변수 삭제

해당 포스팅은 아래의 사이트를 참고하여 작성하였습니다.
SW Expert Academy https://swexpertacademy.com/

profile
개발 공부를 막 시작한 주니어입니다.

0개의 댓글