파이썬/Basic

    Python 데코레이터 : 정적 메서드부터 데이터 클래스까지 알아보기

    @staticmethod: 클래스 내부의 독립적인 함수Python에서 @staticmethod는 클래스 내부에 정의된 독립적인 함수를 나타냅니다. 이 함수는 클래스나 인스턴스와 상관없이 동작하며, self 또는 cls 매개변수를 받지 않습니다.class MathUtils: @staticmethod def add(a, b): return a + bresult = MathUtils.add(10, 5) # 15@classmethod: 클래스 자체를 인자로 받는 메서드@classmethod는 클래스 자체를 첫 번째 인자로 받는 메서드를 나타냅니다. 이 메서드는 클래스 인스턴스 없이 호출할 수 있으며, 클래스 속성이나 메서드에 접근할 수 있습니다.class MyClass: class..

    Python의 데코레이터: 강력한 코드 확장 기능

    Python에서 데코레이터는 매우 강력한 기능입니다. 데코레이터를 사용하면 함수 및 클래스의 동작을 손쉽게 확장할 수 있습니다. 이번 포스팅에서는 Python 데코레이터에 대해 자세히 살펴보겠습니다.데코레이터란?데코레이터는 함수 또는 클래스를 수정하거나 확장하는 방법입니다. 데코레이터는 함수 앞에 @ 기호와 함께 사용됩니다.예를 들어, 다음과 같이 @uppercase 데코레이터를 정의할 수 있습니다:def uppercase(func): def wrapper(*args, **kwargs): result = func(*args, **kwargs) return result.upper() return wrapper@uppercasedef say_hello(name): r..

    sort와 sorted의 차이점

    파이썬에서 리스트를 정렬하는 작업은 매우 빈번하게 발생합니다. 이를 위해 sort와 sorted 두 가지 함수가 제공되는데, 이들은 유사한 기능을 제공하면서도 중요한 차이점을 가지고 있습니다. 1. sort() 기능: 리스트를 직접 변경하여 정렬합니다. 반환 값: None (리스트 자체를 변경합니다) my_list = [5, 2, 4, 1, 3] # 리스트를 직접 정렬 my_list.sort() print(my_list) # [1, 2, 3, 4, 5] 2. sorted() 기능: 리스트를 새롭게 만들어 정렬 결과를 반환합니다. 반환 값: 정렬된 새로운 리스트 my_list = [5, 2, 4, 1, 3] # 새 리스트를 만들어 정렬 결과 반환 sorted_list = sorted(my_list) pri..

    문자열에 원하는 문자를 추가하는 방법

    블로그 게시물 작성, 소셜 미디어 게시물 공유, 데이터 분석 등 다양한 상황에서 문자열에 특정 문자를 추가해야 하는 경우가 있습니다. 이 작업은 수동으로 수행할 수도 있지만, Python 코드를 활용하면 훨씬 빠르고 간단하게 처리할 수 있습니다. 이 글에서는 간단하게 단어 앞에 해쉬태그(#)을 추가하는 방법에 대해서 설명하겠습니다. 예시 def add_prefix(text, prefix): """ 문자열에 지정된 접두사를 추가합니다. Args: text: 문자열 prefix: 추가할 접두사 Returns: 접두사가 추가된 문자열 """ # 문자열을 공백을 기준으로 분리 words = text.split(" ") # 각 단어 앞에 접두사를 추가하고 리스트에 저장 prefixed_words = [f"{pre..

    Python에서 JSON과 Dictionary 간 변환하는 방법

    JSON은 키-값 쌍으로 이루어진 데이터를 전달하기 위해 인간이 읽을 수 있는 텍스트를 사용하는 개방형 표준 포맷입니다. Python에서 JSON 데이터를 사용하기 위해서는 Dictionary로 변환해야 합니다. 반대로, Dictionary를 JSON으로 변환하여 다른 프로그램이나 API와 데이터를 주고받을 수 있습니다. JSON을 Dictionary로 변환하기 Python의 json 라이브러리를 사용하여 JSON 문자열을 Dictionary로 변환할 수 있습니다. json.loads() 함수를 사용하면 JSON 문자열을 파싱하여 Dictionary 객체를 반환합니다. import json json_data = '{ "p1": { "name": "chulsu", "age": 20 }, "p2": { "n..

    파이썬 리스트 컴프리헨션

    파이썬 리스트 컴프리헨션은 리스트를 생성하는 간단하고 효율적인 방법입니다. 리스트 컴프리헨션은 for 루프를 사용하여 리스트를 생성하는 것과 유사하지만, 더 간결하고 읽기 쉽습니다. 기본 구조 리스트 컴프리헨션의 기본 구조는 다음과 같습니다. [표현식 for 요소 in 시퀀스] 표현식은 각 요소의 값을 지정합니다. 요소는 시퀀스의 각 요소를 나타냅니다. 시퀀스는 리스트를 생성할 요소를 포함하는 시퀀스입니다. 예제 다음은 리스트 컴프리헨션을 사용하여 1에서 10까지의 정수 리스트를 생성하는 코드입니다. numbers = [i for i in range(1, 11)] 이 코드는 다음과 같이 작동합니다. range(1, 11) 함수를 사용하여 1에서 10까지의 정수 시퀀스를 생성합니다. for 루프를 사용하여..

    하나의 리스트를 여러개로 나누기

    리스트를 나누는 방법에는 여러 가지가 있습니다. 가장 일반적인 방법은 for 루프를 사용하는 것입니다. 다음은 for 루프를 사용하여 리스트를 1000개씩 나누는 코드입니다. for문 사용 index = [row.index[i * 1000:(i + 1) * 1000].tolist() for i in range(0, int(len(row.index) / 1000))] 이 코드는 다음과 같이 작동합니다. range() 함수를 사용하여 0부터 len(row.index) / 1000 미만의 값을 생성합니다. for 루프를 사용하여 생성된 값을 순회합니다. i * 1000부터 (i + 1) * 1000까지의 인덱스 값을 가져옵니다. 가져온 인덱스 값을 리스트로 변환합니다. 변환된 리스트를 index 리스트에 추가..

    문자열 공백 제거하기

    파이썬에서 문자열 공백을 제거하는 방법은 여러 가지가 있습니다. 가장 일반적인 방법은 다음과 같습니다. 1. strip() 메서드 strip() 메서드는 문자열의 시작과 끝에 있는 모든 공백을 제거합니다. text = " Hello, World! " text.strip() # "Hello, World!" 2. lstrip() 메서드 lstrip() 메서드는 문자열의 시작에 있는 모든 공백을 제거합니다. text = " Hello, World! " text.lstrip() # "Hello, World! " 3. rstrip() 메서드 rstrip() 메서드는 문자열의 끝에 있는 모든 공백을 제거합니다. text = " Hello, World! " text.rstrip() # " Hello, World!" ..