[Python]-데이터 타입

hannah·2024년 1월 17일
0

Python

목록 보기
4/10

Data Types

값의 종류와 그 값에 적용 가능한 연산과 동작을 결정하는 속성

파이썬의 데이터 타입은 크게Nemeric Types, Text Sequnce Type, Sequence Types, Non-sequence Types, 그리고 기타로 구성되어 있다.

💡 그렇다면 데이터 타입이 필요한 이유는 뭘까?

1. 타입의 분류에 따라 값들을 구분하고, 어떻게 다뤄야 하는지 알 수 있고,

2. 각 데이터 타입 값들도 각자에게 적합한 도구를 가진다.

3. 또한 타입을 명시적으로 지정하면 코드를 읽는 사람이 변수의 의도를 더 쉽게 이해할 수 있고, 잘못된 데이터 타입으로 인한 오류를 미리 예방할 수 있다.


필요성을 알았으니 이제 타입별로 자세하게 알아보자.

1. Numeric Type

  • int(정수)
  • float(실수)
  • complex(복소수)

2. Text Sequence Types

  • str(문자열)
    - 문자들의 순서가 있는 변경 불가능한 시퀀스 자료형

3. Sequence Types

여러 개의 값들을 순서대로 나열하여 저장하는 자료형

  • list
    - 여러 개의 값을 순서대로 저장하는 변경 가능한 시퀀스 자료형
    	1. 0개 이상의 객체를 포함하며 데이터 목록을 저장
    	2. 대괄호로 표기
    	3. 데이터는 어떤 자료형도 저장할 수 있음
  • tuple
    - 여러 개의 값을 순서대로 저장하는 변경 불가능한 시퀀스 자료형
    1. 0개 이상의 객체를 포함하며 데이터 목록을 저장
     2. 소괄호로 표기
     3. 데이터는 어떤 자료형도 저장할 수 있음

튜플의 사용 범위: 튜플의 불변 특성을 사용하여 안전하게 여러 개의 값을 전달, 그룹화, 다중 할당 등 개발자가 직접 사용하기 보다 ‘파이썬 내부 동작’에서 주로 생산됨

  • range
    - 연속된 정수 시쿼스를 생성하는 변경 불가능한 자료형
    1. range(n)
      • 0부터 n-1까지의 숫자 시퀀스
    2. range(n, m)
      • n부터 m-1까지의 숫자 시퀀스
    3. 주로 반복문과 함께 사용
      • 리스트로 형 변환 시 데이터 확인 가능

📌 Sequence Types의 특징

  1. 순서(Sequence)
    • 값들이 순서대로 저장(정렬 X)
  2. 인덱싱(Indexing)
    • 각 값에 고유한 인덱스(번호)를 가지고 있으며, 인덱스를 사용하여 특정 위치의 값을 선택하거나 수정할 수 있음
    1. 슬라이싱(Slicing)
    • 인덱스 범위를 조절해 부분적인 값을 추출할 수 있음
    • my_str[start, end, step]
      • start부터 end의 전까지 step의 단위로 요소를 추출
      • step이 음수일 경우: end에서 start의 순서로 추출됨. 즉, reverse과 같이 동작
    1. 길이(Length)
    • len() 함수를 사용하여 저장된 값의 개수(길이)를 구할 수 있음
    1. 반복(Iteration)
    • 반복문을 사용하여 저장된 값들을 반복적으로 처리할 수 있음
  • Escape sequence

    • 역슬래시 뒤에 특정 문자가 와서 특수한 기능을 하는 문자 조합
    • 파이썬의 일반적인 문법 규칙을 잠시 탈출한다는 의미
      • \n: 줄 바꿈
      • \t: 탭
      • \: 백슬래시
      • \’: 작은 따옴표
      • \”: 큰 따옴표
  • f-string

    • 문자열에 f 또는 F 접두어를 붙이고 표현식을 {expression}로 작성하여 문자열에 파이썬 표현식의 값을 삽입할 수 있음

      bug='roaches'
      counts=13
      area='living room'
      
      print(f`Debugging {bug} {counts} {area}`)
      # Debugging roaches 13 living room

4. Non-sequence Types

  • set
    - 순서와 중복이 없는 변경 가능한 자료형

    	1. 수학에서의 집합과 동일한 연산 처리 가능(합/차/교집합)
    	2. 중괄호로 표기
  • dict
    - key-value 쌍으로 이루어진 순서와 중복이 없는 변경 가능한 자료형

    	1. key는 변경 불가능한 자료형만 사용 가능	
    	2. 중괄호로 표기
    	3. value는 모든 자료형 사용 가능

5. 기타

  • Boolean
    - 참과 거짓을 표현하는 자료형
  • None
    - 파이썬에서 ‘값이 없음’을 표현하는 자료형
  • Functions

위 분류는 크게 sequence와 non-sequence로 나뉘어져 있으며 아래에는 컬렉션에 속하는 데이터 타입을 정리해보려고 한다.

Collection or Container

여러 개의 항목 또는 요소를 담는 자료 구조

  • str(range), list, tuple, set, dict

컬렉션 정리

0개의 댓글