Lambda는 이름 없는 일회용 함수를 만드는 방법입니다. lambda 인자: 표현식2021. 5. 29 최초작성2024. 11. 3같은 기능을 하는 일반 함수와 lambda 함수를 비교해봅니다. # 일반 함수def add(x, y): return x + y# lambda 함수add_lambda = lambda x, y: x + yprint(add(3, 5)) # 출력: 8print(add_lambda(3, 5)) # 출력: 8if문에서 사용 is_even = lambda x: "짝수" if x % 2 == 0 else "홀수"print(is_even(4)) # 짝수print(is_even(7)) # 홀수# 삼항 연산자 사용is_positive = lambda x: "양수" ..
파이썬 이터레이터(Iterator)와 제너레이터(Generator)의 차이점을 살펴봅니다.2024. 10. 22 최초작성이터러블과 이터레이터 제너레이터이터러블과 이터레이터이터러블(Iterable)은 반복 가능한 파이썬 객체로 for 루프를 사용하여 객체의 원소를 순회하여 접근할 수 있습니다. 이터러블의 예로는 리스트, 집합, 튜플, 딕셔너리, 문자열 등이 있습니다. iter() 함수를 통해 이터레이터를 반환합니다. 이터레이터(iterator)는 리스트, 튜플 등의 이터러블 객체에 iter() 함수를 적용하여 얻을 수 있는 객체입니다. 이 객체는 __next__() 메서드를 통해 객체의 요소를 순차적으로 접근할 수 있습니다. 한 번에 하나의 요소만 반환하며, 모든 요소를 순회하면 StopIteration..
파이썬의 리스트에서 sorted 메소드와 sort 메소드를 사용하는 비교 예제입니다.2024. 8. 15 최초작성sorted 메소드는 정렬후 새로운 리스트를 반환하며 sort 메소드는 원본 리스트를 직접 변경하는 차이가 있습니다. original_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]print("원본 리스트:", original_list)print()# 원본 리스트: [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]# sorted() 함수 사용sorted_list = sorted(original_list)print("sorted() 함수 사용 후:")print("정렬된 새 리스트:", sorted_list)print("원본 리스트:", original_lis..
파이썬 리스트에서 중복 원소를 제거하는 예제코드입니다.2024. 8. 11 최초작성set을 사용하는 방법은 리스트의 순서가 유지되지 않는 단점이 있습니다. original_list = [10, 2, 2, 3, 4, 4, 5]unique_list = list(set(original_list))print(unique_list)# [2, 3, 4, 5, 10]dict.fromkeys을 사용하면 리스트의 순서가 유지됩니다. original_list = [10, 2, 2, 3, 4, 4, 5]unique_list = list(dict.fromkeys(original_list))print(unique_list) # [10, 2, 3, 4, 5]
1억 1천만원을 1001만원으로 바꾸는 것처럼 한글이 포함된 가격 표시를 만원 단위로 바꾸는 파이썬 예제코드입니다. 2024. 8. 11 최초작성실행 결과입니다. 5000만원 -> 5000만원1억 1천만원 -> 10001만원2억원 -> 20000만원15000원 -> 1만원2만 5000원 -> 2만원삼십억 이천만원 -> 10001만원1억 5천 -> 10000만원전체 코드입니다. def convert_to_manwon(amount_str): amount_str = amount_str.replace(',', '').replace(' ', '').replace('원', '').strip() total = 0 num_map = {'십': 10, '백': 100, '천': 1000, '만': 100..
특정 단어 뒤에 있는 단어를찾는 Python 예제입니다. 2024. 8. 10 최초작성“나이” 뒤에 있는 단어를 찾는 예제입니다. import retext = """이름 홍길동 나이 30 직업 개발자이름 김철수 나이 25 직업 학생이름 이영희 나이 35 직업 교사"""pattern = r'나이\s*(\w+)'names = re.findall(pattern, text)for name in names: print(name)실행결과입니다. 302535
Python에서 예외처리를 위해 try, except를 사용하는 방법을 다룹니다. 2021. 12. 4 - 최초작성2024. 6. 28참고https://stackoverflow.com/a/47103744/15850881예외가 발생하는 상황으로 배열의 인덱스 범위를 넘어가는 인덱스로 사용해보려고 합니다. 예외를 감지할 코드를 try와 except 사이에 두면 됩니다. import numpy as np# 4개의 원소를 값는 넘파이 배열을 생성합니다. 배열의 인덱스 범위는 0 ~ 4가 됩니다.a = np.array([1, 2, 3, 4])idx = 5try: print(a[idx])# 모든 예외를 감지하기 위해 Exception를 사용합니다. Exception 대신에 감지할 예외 종류를 적어도 됩니다..
defaultdict와 dict를 사용하여 리스트에 있는 단어를 카운팅하는 방법을 비교합니다.2024. 7. 9 최초작성실행결과는 동일합니다. defaultdict 결과: {'apple': 3, 'banana': 2, 'cherry': 1, 'date': 1}일반 dict 결과: {'apple': 3, 'banana': 2, 'cherry': 1, 'date': 1}전체 코드입니다. from collections import defaultdict# 1. defaultdict를 사용한 카운팅def count_with_defaultdict(items): # 해당 키가 없으면 자동으로 0으로 초기화되며 이후 1을 더하게 됩니다. counter = defaultdict(int) fo..
Python에서 try, except를 사용시 예외발생한 줄번호(line number)를 출력하는 예제입니다. 2024. 5. 28 최초작성. import systry: a = 1 / 0except Exception as e: exc_type, exc_obj, exc_tb = sys.exc_info() print(f"An error occurred on line {exc_tb.tb_lineno}: {e}")실행해보면 4번째 줄에 있는 코드에서 예외가 발생했음을 알려줍니다. An error occurred on line 4: division by zero파이썬에서 try, except를 사용하는 예외 처리에 대한 설명은 다음 포스트를 참고하세요. Python try, except 예외처리 ..
logging을 사용하여 레벨별로 다른 파일에 로그를 저장하는 예제입니다. 데이터를 편하게 저장할 방법을 고민해보다가 찾은 방법입니다. INFO 레벨로 출력한 데이터만 따로 저장할 수 있습니다. 2024. 5. 20 최초작성실행해보면 log.txt와 화면에는 모든 로그가 출력됩니다. 2024-06-20 20:31:43,663 - DEBUG - This is a debug message2024-06-20 20:31:43,663 - INFO - This is an info message2024-06-20 20:31:43,664 - WARNING - This is a warning message2024-06-20 20:31:43,664 - ERROR - This is an error message2024-0..