전체 글 389

[파이썬] 파이썬 IDLE 에디터

파이썬 IDLE 에디터파이썬 IDLE (Integrated Development and Learning Environment)은 파이썬 개발을 위한 기본적인 통합 개발 환경(IDE)입니다. 파이썬을 설치할 때 함께 제공되며, 코드 작성, 편집, 디버깅 및 실행을 지원합니다.주요 특징인터랙티브 인터프리터:파이썬 코드를 한 줄씩 실행하고 즉각적인 피드백을 제공합니다.멀티 윈도 텍스트 에디터:구문 강조, 자동 들여쓰기, 코드 완성 및 기타 편리한 기능을 제공합니다.여러 문서를 동시에 열고 편집할 수 있습니다.디버깅 도구:중단점 설정, 단계별 실행, 코드 내 변수 확인 및 수정이 가능합니다.간편한 구성:초보자가 사용하기 쉽도록 설계되었습니다.복잡한 설정 없이 설치 후 바로 사용할 수 있습니다.IDLE 사용법ID..

[파이썬] 파이썬 인터렉티브 셸

파이썬 인터렉티브 셸파이썬 인터랙티브 셸(Interactive Shell)은 파이썬을 실시간으로 실행하고 테스트할 수 있는 대화형 환경입니다. 이를 통해 코드의 작동을 즉시 확인하거나, 작은 코드 스니펫을 테스트할 수 있습니다.주요 기능즉시 실행: 입력한 파이썬 명령어를 즉시 실행하여 결과를 확인할 수 있습니다.빠른 피드백: 코드의 오류나 결과를 즉시 확인할 수 있어, 코드 실험과 디버깅에 유용합니다.자동 완성: 변수명이나 함수명을 자동 완성하여 빠른 코딩을 지원합니다.도움말 기능: help() 함수를 통해 모듈이나 함수의 문서를 실시간으로 확인할 수 있습니다.시작하는 방법파이썬 인터랙티브 셸을 사용하는 방법은 여러 가지가 있습니다:터미널/커맨드 라인:운영체제의 터미널(리눅스/맥)이나 커맨드 프롬프트(윈..

[파이썬 연습] 주식 거래의 변동성 돌파 전략

주식 거래의 변동성 돌파 전략변동성 돌파 전략을 구현하고 백테스팅하기 위한 파이썬 코드를 작성하고자 한다면, 여기에 표준 Python 라이브러리를 사용하여 삼성전자 주식 데이터에 적용할 수 있는 전체 코드 예시를 제공합니다. 이 예시는 pykrx 모듈을 사용하여 데이터를 불러오고, 변동성 돌파 전략을 구현하여 그 성과를 평가합니다.완성된 파이썬 코드# 필요한 라이브러리를 불러옵니다.import pandas as pdfrom pykrx import stockimport numpy as np# 삼성전자의 주식 데이터를 2023년 1월 1일부터 2023년 12월 31일까지 불러옵니다.start_date = '2023-01-01'end_date = '2023-12-31'df = stock.get_market_o..

[파이썬 연습] 로깅과 어노테이션

로깅과 어노테이션로깅과 어노테이션을 함께 사용하는 방법을 설명드리겠습니다. 로깅은 프로그램의 실행 과정을 추적하고 기록하는 방법입니다. 파이썬의 logging 모듈을 사용하면 다양한 수준의 로그 메시지를 쉽게 기록할 수 있습니다. 이를 함수에 어노테이션으로 추가하여 함수 호출 시마다 로그를 남길 수 있습니다.로깅 설정먼저 로깅 설정을 합니다. 로깅 설정은 일반적으로 프로그램의 시작 부분에 위치시킵니다.import logginglogging.basicConfig(level=logging.INFO, format='%(asctime)s - %(levelname)s - %(message)s')logger = logging.getLogger(__name__)데코레이터를 사용한 로깅로깅을 함수에 추가하려면 데코레이..

[파이썬 연습] 어노테이션과 타입 힌트

파이썬에서 타입 힌트(Type Hint)는 함수의 인자와 반환값의 타입을 명시하여 코드의 가독성을 높이고, 코드 분석 도구나 IDE가 타입을 추론하는 데 도움을 주기 위해 사용됩니다. 어노테이션(Annotation)은 이러한 타입 힌트를 사용하는 방법입니다.타입 힌트의 기본 사용법타입 힌트는 함수의 인자와 반환값에 대한 타입을 명시할 수 있습니다. 이를 통해 코드를 읽는 사람이 함수의 의도를 더 쉽게 이해할 수 있습니다.1. 기본 타입 힌트def add(x: int, y: int) -> int: return x + yresult = add(3, 5)print(result) # 8위 예제에서 x와 y는 int 타입이며, 함수는 int 타입을 반환한다고 명시하고 있습니다.2. 다양한 타입 힌트파이썬의..

[파이썬 연습] 파이썬 데코레이터

파이썬 데코레이터파이썬 데코레이터(Decorator)는 기존 함수나 메서드에 추가적인 기능을 동적으로 부여하는 데 사용되는 디자인 패턴입니다. 데코레이터는 함수를 인자로 받아 새로운 함수를 반환하는 함수입니다. 데코레이터를 사용하면 코드의 재사용성을 높이고 중복을 줄일 수 있습니다.기본 데코레이터 사용법1. 기본 데코레이터 예제먼저 간단한 데코레이터를 만들어 보겠습니다.def my_decorator(func): def wrapper(): print("Something is happening before the function is called.") func() print("Something is happening after the function is calle..

[파이썬 연습] 내장 변수 __name__

내장 변수 name파이썬에서 내장 변수 __name__은 모듈의 이름을 나타내는 특별한 변수입니다. 이 변수는 모듈이 직접 실행되는지 아니면 다른 모듈에 의해 임포트(import)되는지 여부를 확인하는 데 사용됩니다.__name__의 동작 원리스크립트가 직접 실행될 때: __name__ 변수는 "__main__"으로 설정됩니다.모듈이 임포트될 때: __name__ 변수는 모듈의 이름으로 설정됩니다.이를 활용하면 모듈이 직접 실행될 때와 임포트될 때의 동작을 구분할 수 있습니다.예제예제 1: 기본 사용법my_module.py라는 파일을 만들고 다음과 같이 작성합니다:# my_module.pydef hello(): print("Hello, World!")if __name__ == "__main__": ..

[파이썬 연습] 예외 처리 작성하기

예외 처리 작성하기예외 처리는 프로그램 실행 중 발생할 수 있는 오류를 처리하여 프로그램이 중단되지 않도록 하는 방법입니다. 파이썬에서는 try, except, else, finally 키워드를 사용하여 예외 처리를 할 수 있습니다.기본 구조try: # 예외가 발생할 가능성이 있는 코드except 예외타입 as e: # 예외가 발생했을 때 실행할 코드else: # 예외가 발생하지 않았을 때 실행할 코드finally: # 예외 발생 여부와 관계없이 항상 실행할 코드예제1. 기본적인 예외 처리try: x = int(input("숫자를 입력하세요: ")) y = int(input("나눌 숫자를 입력하세요: ")) result = x / yexcept ValueError: ..

[파이썬 연습] 클래스와 객체

클래스와 객체프로그래밍에서 클래스를 사용하여 사물처럼 코드를 작성하는 것은 객체지향 프로그래밍(OOP)의 핵심입니다. 클래스와 객체는 데이터를 구조화하고 기능을 묶어주는 강력한 도구입니다. 파이썬에서 클래스를 정의하고 객체를 생성하는 방법을 소개하겠습니다.클래스 정의클래스는 객체의 설계도입니다. 클래스를 정의하려면 class 키워드를 사용합니다.class 클래스이름: def __init__(self, 매개변수1, 매개변수2, ...): self.속성1 = 매개변수1 self.속성2 = 매개변수2 def 메서드이름(self, 매개변수들): # 메서드 내용객체 생성클래스에서 객체를 생성하려면 클래스 이름을 함수처럼 호출합니다.객체이름 = 클래스이름(인자1, 인..

[파이썬 연습] 함수

파이썬 함수함수는 특정 작업을 수행하는 코드의 묶음입니다. 파이썬에서 함수를 사용하면 코드의 재사용성과 가독성을 높일 수 있습니다. 함수의 정의, 호출, 매개변수, 반환 값 등을 살펴보겠습니다.함수 정의파이썬에서 함수를 정의하려면 def 키워드를 사용합니다.def 함수이름(매개변수1, 매개변수2, ...): 함수내용 return 반환값함수 호출정의된 함수를 호출하려면 함수 이름과 괄호를 사용합니다.함수이름(인자1, 인자2, ...)예제기본 함수def greet(name): print(f"안녕하세요, {name}님!")greet("철수") # 안녕하세요, 철수님!매개변수와 반환 값이 있는 함수def add(a, b): return a + bresult = add(3, 5)print(..