람다 함수의 존재는 익히 알고 있었지만 그동안 활용하지 못하다가, 기존 코드의 길이를 줄이고 가독성을 향상 시키기 위해 사용하려고 정리하는 글이다. (드디어) 🤓🤪 람다 함수란 람다 함수는 파이썬에서 간단한 함수를 빠르게 작성하기 위한 방법 중 하나다. 일반적인 함수를 정의하는 것보다 문법이 더 간결하며, 보통 한 줄로 표현된다. 람다 함수의 기본 구조 lambda arguments: expression lambda: 람다 함수를 정의하는 키워드 arguments: 람다 함수에 전달할 인자를 나열. 쉼표로 구분되며, 여러 개의 인자를 사용할 수 있음. expression: 인자를 사용하여 계산되는 표현식. 이 표현식의 결과가 람다 함수의 반환값이 됨. 예시 1. 두 숫자를 더하는 람다 함수: f = la..
Development/Python

**파이썬 변수명을 작성 중에 문득 명명 규칙에 대해 생각하게 되어 이를 정리하려는 글입니다. 변수명을 짓고 있는데, 생각해 보니 상수여서 대문자로 표기해야 되나 순간 헷갈렸다. 보통 다른 예제 코드들을 보면 상수는 대문자로 표기되어 있는 경우가 많았기 때문이다. 그래서 명명 규칙을 다시 한번 확인하기로 했다. 기본적인 개념은 숙지하고 있지만 아무래도 언어별로 규칙이 조금씩 다르기 때문에 문득문득 헷갈려서 새로 찾아보게 되는 것 같다..! 변수명을 선택할 때는 일관성이 중요하며, Python에서는 PEP 8이라는 스타일 가이드에 따라 코드를 작성하는 것이 권장된다. PEP 8 이란? PEP: Python Enhancement Proposal PEP 8은 Python Enhancement Proposal의..
python 에서 keras 모듈이 좋다고 해서 사용해보려고 한다. 하려고 하는 작업은 이미지를 분석하여 캡션을 다는 일이다. 설치 해야할 모듈은 아래와 같다. pip install keras pip install tensorflow 사용 하는 모듈은 아래와 같다. import os from keras.applications.inception_v3 import InceptionV3 from keras.models import Model from keras.preprocessing import image from keras.applications.inception_v3 import preprocess_input from keras.models import load_model from PIL import I..
pass는 파이썬에서 사용되는 특수한 명령어이다. 아무 작업도 수행하지 않고, 단순히 실행 흐름을 건너뛰는 데 사용된다. 구문적으로 블록이 필요하지만 아무 동작이나 작업할 필요가 없는 경우에 주로 사용된다. 일반적인 사용 예 블록 구조에서 미완성한 부분 함수, 클래스, 조건문, 반복문 등의 블록 구조에서 구현할 내용이 없는 경우 pass를 사용하여 구문적으로 블록을 유지할 수 있다. 이는 나중에 구현할 내용이 있을 경우에 유용하다. def my_function(): pass # 나중에 함수 구현을 추가할 예정 if condition: pass # 나중에 조건에 따른 코드를 추가할 예정 for item in my_list: pass # 나중에 반복문의 내용을 추가할 예정 임시로 블록을 비워둘 때 특정 조건..

scrapy란? scrapy는 파이썬 기반의 오픈 소스 웹 크롤링 프레임워크이다. 크롤링 작업을 자동화하고, 웹 사이트에서 데이터를 추출하고, 웹페이지를 크롤링하는 데 사용된다. scrapy는 웹 크롤링에 필요한 다양한 기능과 도구를 제공하여 개발자가 효율적으로 크롤링 작업을 구현할 수 있도록 도와준다. scrpapy의 핵심 기능 스파이더 (Spider): Scrapy의 핵심 개념으로, 크롤링 작업을 수행하는 데 사용된다. 스파이더는 웹페이지를 탐색하고 데이터를 추출하는 룰 기반의 크롤링 로직을 포함한다. 사용자는 스파이더를 작성하여 필요한 데이터를 웹페이지에서 추출할 수 있다. 요청 및 응답 처리: Scrapy는 HTTP 요청을 보내고 웹 서버로부터 받은 응답을 처리하는 기능을 제공한다. 이를 통해 스..
base64란? : 데이터를 텍스트로 표현하는 인코딩 방식 중 하나이다. 이진 데이터를 64개의 ASCII문자로 이루어진 문자열로 변환한다. 데이터 크기를 약간 늘리는 단점이 있지만, 데이터의 무결성을 보존하고 다양한 시스템 간에 이진 데이터를 안전하게 전송할 수 있는 장점이 있다. import base64 encoded_url = '6dQgMANO9qsfWFmshg0wEv///w==' decoded_url = base64.b64decode(encoded_url).decode('utf-8') `base64.b64decode()` 함수를 사용하여 해당 문자열을 디코드하고 `decode('utf-8')`를 사용하여 바이너리 데이터를 문자열로 변환한다.
파이썬 개발 시 로그를 확인하려는 경우, 로깅을 사용할 수 있다. 로깅(logging)이란 `logging` 모듈은 Python에서 로깅 기능을 제공하는 표준 라이브러리로, 애플리케이션의 실행 동안 발생하는 이벤트와 정보를 기록하는 도구 Python에서는 logging 모듈을 사용하여 로깅을 구현할 수 있다. 사용방법 import logging # 로깅 설정 logging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s') data = "logging test" # 로그 출력 logging.info("데이터: %s", data) `logging` 모듈의 주요 클래스 1. `Logger`: 로그 메시지를 생성..

instaloader 설치 pip install instaloader 예제 코드1 import instaloader # 인스타그램 로그인 정보 입력 ig_username = '인스타그램ID' ig_password = '인스타그램PW' L = instaloader.Instaloader() try: # 인스타그램 로그인 L.context.log("인스타그램 로그인 중...") L.load_session_from_file(ig_username) if not L.context.is_logged_in: raise Exception("로그인 실패") L.context.log("로그인 성공") except Exception as e: L.context.log("로그인 실패") L.context.log(str(e)) ..