본문 바로가기
빅데이터 분석기사

파이썬 데이터 타입 완전 정복 - 튜플, 리스트, 딕셔너리, 집합

by 공불러 2024. 2. 3.
728x90
반응형

파이썬 데이터 타입 완전 정복 - 튜플, 리스트, 딕셔너리, 집합

튜플, 리스트, 딕셔너리, 집합
파이썬 데이터 타입 완전 정복 - 튜플, 리스트, 딕셔너리, 집합

 

목차

     

     

    파이썬의 데이터 타입

    파이썬의 데이터 타입이 뭐가 있는 지 궁금해 하는 사람이라면, 아마 단일 데이터 타입이 아닌 복합형 데이터 타입을 궁금해할 가능성이 높다.

    단일 데이터 타입은 정수, 실수, 문자형, 불리언, 논타입 등을 말한다. 개발자라면 이미 충분히 아는 내용일 것이며, 비개발자라면 처음들을 가능성이 높다. 빅분기를 준비하는 분들이라면, 함께 알아두면 좋다. error 내용 중에 가끔 이러한 내용이 나올 수 있기 때문이다.

     

    본 설명의 예시 이미지들은 모두 Jupyter notebook을 이용했다. 해당사항은 아래 글에서 상세히 확인할 수 있습니다 : )

    2023.05.24 - [빅데이터 분석기사] - 아나콘다 및 파이썬 설치(feat. 프롬프트, 빅분기)

     

    아나콘다 및 파이썬 설치(feat. 프롬프트, 빅분기)

    아나콘다 및 파이썬 설치(feat. 프롬프트, 빅분기) 파이썬은 웹 개발에서나 쓰는 줄 알았는데, 빅데이터 분석에도 쓰이는 걸 처음 알았다. 오픈소스라서 나중에도 쓸 수 있을 것이다. 파이참이나

    shareknowledge-top.tistory.com

     

    파이썬 단일 데이터 타입

    아래와 같이, int, float, str, bool, non type이 존재한다. 본 게시글은 데이터 분석에 필요한 복합 데이터타입을 중심으로 다룰 것이기 때문에 단일 데이터 타입은 짧게 이야기 하도록 하겠다.

    데이터 타입 예시 설명
    정수 (int) age = 25 소수점이 없는 숫자, 양수 또는 음수 값을 가짐
    실수 (float) height = 175.5 소수점을 포함하는 숫자, 실수 값을 가짐
    문자열 (str) name = "John" 문자들의 연속, 작은따옴표나 큰따옴표로 감싸짐
    불리언 (bool) is_adult = True 논리적인 참(True) 또는 거짓(False) 값을 가짐
    None 타입 value = None 값이 존재하지 않음을 나타내는 특별한 데이터 타입

     

    파이썬 복합 데이터 타입

    파이썬의 데이터 타입 중 복합 데이터 타입이란 기호에 따라 순서나 값, 키 등이 연결되어 있는 일련의 데이터를 말한다. int로는 하나의 데이터만 정의가 되지만, 리스트, 튜플, 딕셔너리, 집합은 연속되는 데이터를 가지게 된다. 우리가 설문조사를 100명에게 하면, 동일한 질문에 대해 각각 100개씩의 데이터가 쌓이게 될 것이다. 이러한 자료형을 복합 데이터 타입이라고 한다.

     

    자료형 예시 설명
    리스트 (list) fruits = ['apple', 'banana', 'orange'] 여러 값을 순서대로 저장하는 자료형, 대괄호 []를 사용하여 정의
    튜플 (tuple) coordinates = (3, 4) 변경이 불가능한 순서쌍을 저장하는 자료형, 괄호 ()를 사용하여 정의
    딕셔너리 (dict) person = {'name': 'Alice', 'age': 30} 키-값 쌍을 저장하는 자료형, 중괄호 {}를 사용하여 정의
    집합 (set) unique_numbers = {1, 2, 3, 4, 5} 중복을 허용하지 않고 순서가 없는 값들의 모임, 중괄호 {}를 사용하여 정의

    리스트[list]

    리스트는 데이터 분석 시 가장 많이 다루는 데이터 타입이다. 다음은 리스트 선언 예시이다.

    먼저, 리스트의 특징을 파악하면, 다른 데이터 타입들에 대해 이해하기가 쉬워질 것이다. 

    리스트 입력, 출력 예시

     

    리스트는 값의 순서를 가지며, 변경이 가능하다. 대괄호[]를 사용하여 변수를 선언하거나 list()를 사용하여 생성할 수 있다. 

    그 뿐만아니라, 튜플로 선언한 데이터도 리스트로 변경이 가능하다.

    튜플을 리스트로 전환하는 예시
    튜플을 리스트로 전환하는 예시

    리스트의 길이를 확인하는 방법은 len() 함수를 사용하는 것이다.

    리스트 길이 확인
    len함수 사용 예시

    위 예시들은 보두 int형 데이터로만 이루어져있다. 명색의 복합데이터타입이라면, str(텍스트) 데이터도 포함해야할 것이다. 이러한 데이터 형태 예시는 다음과 같다.

    리스트 내에 정수, 텍스트 데이터가 있는 예시
    리스트 내에 정수, 텍스트 데이터가 있는 예시

     

    인덱싱과 슬라이싱

    리스트 컬렉션(리스트 값 모음)의 개별 데이이터에 접근하는 방식을 인덱싱과 슬라이싱이라고 한다. 

    인데싱과 슬라이싱의 차이는 인덱싱은 하나의 데이터에 접근하는 것이며, 슬라이싱은 여러 데이터에 접근하는 것을 말한다.

    잠깐! 이러한 자료들은 일정한 순서로 이뤄져있으며, 서열척도이상으로 존재한다. 다시 말하면, 각 순서에 대한 번호를 매길 수 있다. 예를 들면, 4,4,2,1은 앞에서부터 첫 번째 4, 두 번째 4, 세 번째 2, 네 번째 1로 이루어져있다. 프로그래밍 언어에서는 첫 번째는 0번지에 저장된다. 일종의 문법이므로 알아두는 것이 좋다. 즉, a[0] 자리에는 4가 있는 것이다.
    아래 text[0]을 보면 알 수 있다.

     

    인덱싱 예시

    인덱싱 예시

     

    슬라이싱 예시

    슬라이싱 예시
    슬라이싱 예시

     

     

    • 여러 값을 담을 수 있으며, 순서가 있습니다.
    • 대괄호 []를 사용하여 정의하며, 각 요소는 콤마로 구분됩니다.
    • 예시: fruits = ['apple', 'banana', 'orange']

    튜플(tuple)

    튜플은 리스트와 유사하지만 변경이 불가능한 자료형입니다. 튜플은 괄호 ()를 사용하여 정의하며, 여러 값을 순서대로 저장할 수 있습니다.  앞서 설명한 것과 같이, 튜플을 리스트로 전환하여 수정 가능한 형태로 변환할 수 있습니다. 튜플도 리스트와 마찬가지로 인덱싱과 슬라이싱을 사용하여 개별 요소에 접근하거나 부분적인 튜플을 추출할 수 있습니다.

     

    튜플 입출력 예시

     

    # 튜플 선언
    coordinates = (3, 4)
    colors = ('red', 'green', 'blue')
    
    # 튜플 출력
    print(coordinates)  # (3, 4)
    print(colors)       # ('red', 'green', 'blue')

    딕셔너리{'dictionary' : 0}

    딕셔너리는 키-값 쌍을 저장하는 자료형으로, 각 값은 고유한 키에 의해 식별됩니다. 딕셔너리는 중괄호 {}를 사용하여 정의하며, 각 키와 값은 콜론 :으로 연결됩니다.

    딕셔너리 입출력 예시
    딕셔너리 입출력 예시

     

    # 딕셔너리 선언
    person = {'name': 'Alice', 'age': 30, 'city': 'Wonderland'}
    
    # 딕셔너리 출력
    print(person)  # {'name': 'Alice', 'age': 30, 'city': 'Wonderland'}

     

    집합{group}

    집합은 중복을 허용하지 않고 순서가 없는 값들의 모임입니다. 집합은 중괄호 {}를 사용하여 정의하며, 각 값은 콤마로 구분됩니다.

    집합 입출력예시
    집합 입출력예시

     

    # 집합 선언
    unique_numbers = {1, 2, 3, 4, 5}
    
    # 집합 출력
    print(unique_numbers)  # {1, 2, 3, 4, 5}

     

     

    728x90
    반응형

    댓글