데이터 엔지니어링에 Python 클래스 사용

1. 더 쉬운 필드 수집

범주적으로 클래스 사용을 피한다면 목록이나 사전과 같은 다른 기본 제공 데이터 구조를 사용하여 자신만의 "임시 클래스"를 재창조하는 상황에 처하기 쉽습니다.

예를 들어, 단일 논리적 개체와 관련된 다양한 종류의 데이터에 액세스하기 위해 동일한 키를 공유하는 많은 목록 또는 사전이 생길 수 있습니다.

car_colors[23] = 'yellow'  # Color of Car 23
car_mileage[23] = 38189.4  # Mileage of Car 23

cars[23].color = 'yellow'
cars[23].mileage = 38189.4

또한 더 이상 함수에서 함수로 큰 튜플을 전달할 필요가 없습니다.

2. 개체를 함께 연결하고 표현 방식으로 상호 작용할 수 있는 기능

코드가 먼저 말하게 하십시오.

OOP 버전

if not garage.is_full:
    garage.add(my_car)
    my_car.turn_off()
    garage.close()

if not is_garage_full(garage):
    add_car_to_garage(my_car, garage)
    turn_off_car(my_car)
    close_garage(garage)

이 경우 다른 개체가 해당 메서드를 호출하고 해당 작업이 어떻게 구현되는지 알지 못한 채 Button 또는 Car의 내부 상태를 변경할 수 있도록 Button 및 Car 클래스에 메서드를 만들어 이러한 동작 을 캡슐화 하면 도움이 됩니다.

특히 개체에 많은 동작이 있는 경우 개체 자체인 한 지붕 아래 동일한 위치에 모든 동작을 두는 것이 도움이 됩니다. 그런 식으로 개체를 함께 연결하고 절차적 코딩 스타일에서 에뮬레이트하기 어려운 표현 방식으로 개체가 상호 작용하도록 할 수 있습니다.

3. 데이터 클래스

데이터 클래스는 실제로 제한이 없지만 일반적으로 주로 데이터를 포함하는 클래스입니다. @dataclass다음과 같이 데코레이터를 사용하여 생성 됩니다.

from dataclasses import dataclass

@dataclass
class DataClassCard:
    rank: str
    suit: str

>>> queen_of_hearts = DataClassCard('Q', 'Hearts')
>>> queen_of_hearts.rank
'Q'
>>> queen_of_hearts
DataClassCard(rank='Q', suit='Hearts')
>>> queen_of_hearts == DataClassCard('Q', 'Hearts')
True

class RegularCard:
    def __init__(self, rank, suit):
        self.rank = rank
        self.suit = suit

>>> queen_of_hearts = RegularCard('Q', 'Hearts')
>>> queen_of_hearts.rank
'Q'
>>> queen_of_hearts
<__main__.RegularCard object at 0x7fb6eee35d30>
>>> queen_of_hearts == RegularCard('Q', 'Hearts')
False

행동 촉구

가이드가 도움이 되셨다면 박수를 치고 저를 따라오세요. 이 링크 를 통해 미디엄에 가입 하면 나와 여기 미디엄의 다른 멋진 작가들의 모든 프리미엄 기사에 액세스할 수 있습니다.

Suggested posts

"마리아나 해구 공개: 심연의 무서운 숨겨진 진실 공개"

"마리아나 해구 공개: 심연의 무서운 숨겨진 진실 공개"

소개:용감한 독자 여러분, 지구의 가장 어두운 곳으로 우리를 데려다 줄 여행에 오신 것을 환영합니다. 이 블로그에서 우리는 Mariana Trench의 수수께끼 같은 세계를 탐구하여 숨겨진 비밀을 밝히고 그 표면 아래에 있는 뼛속까지 오싹해지는 진실을 밝혀냅니다.

네트워크 TV 트위터

네트워크 TV 트위터

낡은 것이 다시 새 것이 되고, 번쩍이던 것이 이제는 무디게 느껴진다. JNCO 청바지가 1990년대 후반의 다른 패션과 함께 시내의 쿨한 아이들 사이에서 컴백하는 것에 대해 말하는 것이 아닙니다.

Related posts

무한한 삶

당신이 자라면 세상은 있는 그대로이고 당신의 삶은 단지 세상 안에서 당신의 삶을 사는 것이며, 결코 당신의 생명을 위험에 빠뜨리지 않고, 정해진 길을 따르고 결국 죽고, 벽을 너무 세게 치세요.하지만 그것은 매우 제한된 삶입니다.

일부 프리랜서가 자신의 삶을 속이는 이유

일부 프리랜서가 자신의 삶을 속이는 이유

나는 최근에 세계 최대의 전문 소셜 네트워크인 Linkedin에 있었고 내가 팔로우하는 프리랜서 디자이너의 게시물을 발견했는데 내 관심을 끌었습니다. 그들은 모두 비행기에서, 노트북과 함께 해변에서, 수영장에서, 멋진 전망이 있는 사무실에서 사진을 게시했습니다.

2년간의 디자인 - 좋은 것, 나쁜 것, 추한 것…

2년간의 디자인 - 좋은 것, 나쁜 것, 추한 것…

“Siri야, Olivia Dean의 Me Dive 재생해줘.” 나이지리아 아쿠레에 있는 Future Academy Africa에서 인턴십을 시작한 것은 2021년 5월이었습니다.

대명사는 정말 무섭다

너무 자주 그렇듯 갑자기 와닿는다 다시 중간쯤이야 <아니, 태평양에 있는 사람 말고 마룬, 카니발에 있는 사람> 모든 헤드라인이 시끄러워…..