CodeGym /자바 코스 /Python SELF KO /Python 데이터 타입

Python 데이터 타입

Python SELF KO
레벨 5 , 레슨 1
사용 가능

1.1 내장 타입

Python은 여러 내장 데이터 타입을 제공해서 프로그래밍에서 다양한 문제를 해결할 수 있게 해줘. 일부는 이미 배웠고, 이제 조금 더 자세히 알아보자. 주요 내장 데이터 타입의 간단한 설명은 다음과 같아:

  1. int — 소수점 없는 정수 값이야.
  2. float — 소수점을 포함한 숫자(실수)야.
  3. complex — 복소수(실수 부분과 허수 부분으로 구성)야.
  4. str — 문자들의 순서인 문자열이야.
  5. boolTrueFalse 값을 가지는 논리 데이터 타입이야.
  6. None — 값을 갖지 않는 특별한 타입이야.
  7. bytes — 변경 불가능한 바이트들의 순서야.
  8. bytearray — 변경 가능한 바이트들의 순서야.
  9. memoryview — 데이터를 복사하지 않고 바이너리 형태로 작업할 수 있게 해주는 객체야.

아래 표에는 이 데이터 타입들과 그 특징들이 나와 있어:

데이터 타입 설명 사용 예시
int 정수 x = 10
float 소수점을 포함한 숫자 y = 3.14
complex 복소수 z = 1 + 2j
str 문자열 s = "Hello, world!"
bool 불 타입 is_valid = True
None 값 없음 result = None
bytes 변경 불가능한 바이트 순서 b = bytes([50, 100, 76])
bytearray 변경 가능한 바이트 순서 ba = bytearray([50, 100])
memoryview 메모리에 있는 데이터 표현 mv = memoryview(b'abc')

이러한 데이터 타입들을 사용하면 Python에서 기본적인 수치 연산과 텍스트 작업부터 복잡한 바이너리 데이터 처리와 메모리 관리까지 다양한 로직을 구현할 수 있어.

1.2 컬렉션

Python에서는 데이터를 저장하는 것 외에도 객체 그룹 전체를 한 번에 저장할 수도 있어. 이러한 타입을 컬렉션이라고 부르지. 컬렉션은 여러 요소를 저장, 관리 및 처리할 수 있는 다양한 데이터 구조를 제공해. 아래에 Python의 주요 컬렉션 타입이 나와 있어:

  1. list (리스트) — 변경 가능한 요소들의 순서가 있는 집합이야.
  2. tuple (튜플) — 변경 불가능한 요소들의 순서가 있는 집합이야.
  3. range (범위) — 일반적으로 반복문에서 사용되는 숫자들의 순서야.
  4. set (세트) — 순서가 없는 고유한 요소들의 집합이야.
  5. dict (딕셔너리) — 고유한 키를 가진 키-값 쌍들의 컬렉션이야.
  6. frozenset (고정 세트)set의 변경 불가능한 버전이야.

아래 표에는 이 컬렉션들과 그 특성이 나와 있어:

컬렉션 타입 설명 예시
list 변경 가능, 요소들이 반복될 수 있음 my_list = [1, 2, 3]
tuple 변경 불가능, 요소들이 반복될 수 있음 my_tuple = (1, 2, 3)
range 변경 불가능한 숫자 순서 my_range = range(1, 10)
set 고유한 요소들의 순서가 없는 집합 my_set = {1, 2, 3}
dict 키-값 쌍, 키는 고유함 my_dict = {'a': 1, 'b': 2}
frozenset 고유한 요소들의 변경 불가능한 집합 my_frozenset = frozenset([1, 2, 3])

이 컬렉션 각각은 고유한 특성과 메서드를 가지고 있어서, 간단한 데이터 저장부터 복잡한 데이터 처리 및 관리까지 프로그래밍에서 다양한 작업에 적합해. 다음 강의에서 더 자세히 다룰 거야.

1.3 클래스와 객체

내장 타입도 좋지만, 때로는 그것만으로는 충분하지 않을 수 있어. 이럴 때 Python에서는 클래스라는 자체 타입을 선언할 수 있어.

Python에서 클래스는 관련된 함수와 데이터를 묶는 방법을 제공해. 또한, 특정한 행동과 속성을 가진 실제 또는 추상적인 객체들도 모델링할 수 있어.

예를 들어, "스마트폰" 클래스를 설명해야 한다고 상상해 봐. 이 클래스는 모델, 제조사, 기억 용량 및 운영 체제에 대한 데이터를 포함할 수 있어. 또한, 스마트폰의 작동과 관련된 행동을 설명하는 함수(메서드)를 포함할 수 있어, 예를 들면, 전원을 켜고 끄고, 앱을 설치하는 것 등이 있지.

클래스는 class 키워드를 사용해서 만들어져. 이 명령어는 새로운 객체 타입을 만들고, 새로운 클래스가 다른 클래스에서 속성과 메서드를 상속받을 수 있게 해줘.

먼저 이미 존재하는 클래스를 사용하고, 그 객체를 생성하는 법을 배울 건데, 시간이 되면 우리가 직접 클래스를 만들어 볼 거야.

알아두면 좋은 것은 클래스에는 자체 내장 함수(클래스 메서드라고도 불려)가 있어서, 이런 함수는 다음과 같이 호출돼:


객체.함수(파라미터)

기억나지, 우리가 문자열에 format() 함수를 호출했었잖아? 이게 바로 그런 경우였어. 함수, 클래스, 객체에 대해서는 다음 강의에서 더 자세히 알아볼 거야.

코멘트
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION