728x90

python 102

정규분포 기반 주가 분석 프로그램

주요기능Tkinter 기반 GUIPython 표준 GUI 라이브러리인 Tkinter(ttk)를 사용해 윈도우, 탭, 콤보박스, 리스트박스, 버튼 등으로 구성된 인터페이스 제공Notebook 탭으로 여러 차트를 손쉽게 전환 가능설정 파일로 관리되는 종목 리스트stocks.properties 파일을 읽어 [STOCK] 섹션에 정의된 종목 코드와 이름을 로드콤보박스에서 미리 정의된 종목 선택 또는 직접 코드 입력으로 조회FinanceDataReader를 이용한 데이터 취득지정한 종목의 최근 2년치 일별 시세(종가)를 FinanceDataReader로 한 번에 받아옴데이터를 캐시에 저장해, 동일 종목을 다시 조회할 때 네트워크 호출을 최소화4가지 핵심 기술적 지표 계산 및 시각화Bollinger Bands: 이..

Ant Colony Optimization (ACO, 개미 군집 최적화) 알고리즘

개미의 페로몬 경로와 네트워크 라우팅 개미는 먹이를 찾기 위해 무작위로 이동하다가 먹이를 발견하면, 돌아오는 길에 페로몬(pheromone)을 남긴다.다른 개미들은 이 화학적 흔적을 따라가며 더욱 많은 개미가 같은 경로를 사용하게 되고, 결과적으로 가장 짧고 효율적인 경로가 자연스럽게 선택된다.이 단순하면서도 강력한 자연의 알고리즘은 컴퓨터 네트워크 분야, 특히 안트 콜로니 최적화(Ant Colony Optimization, ACO) 알고리즘의 기반이 되었다. 이 알고리즘은 최단 경로를 찾거나 복잡한 문제를 분산적으로 해결할 때 사용되며, 인터넷 트래픽 관리, 물류 배송, 로봇 경로 탐색 등 다양한 분야에서 활용되고 있다.실제 개미의 행동 원리무작위 탐색 시작: 개미들은 처음엔 무작위로 이동해 먹이를 ..

Flet 메모장

이 책에 포함된 예제 코드중 메모장 기능을 새로 만들어 보왔습니다. 이 코드에서는 Flet을 사용하여 사용자가 메모를 입력하고, 삭제하고, 선택할 수 있는 기능을 제공합니다. 데이터베이스와의 연동을 위해 memo_dbhandler.py 모듈을 별도로 작성하였 데이터베이스 작업을 분리함으로써 코드의 가독성과 유지보수를 용이하게 했습니다. 주요 기능으로는 메모 추가, 선택, 삭제, 및 모든 메모 삭제가 포함되며 데이터베이스로 통합되어 사용자의 메모 정보를 영구적으로 저장할 수 있습니다.데이터 베이스 모듈(memo_dbhandler.py)데이터베이스와 관련된 작업들을 수행하는 모듈로, 다음과 같은 역할을 합니다:데이터베이스 설정 및 테이블 생성 (setup_db()) - 데이터베이스 연결을 생성하고 테이블이 ..

Flet로 만든 별다방 키오스크(Kiosk)

Flet을 사용하여 전자 메뉴판을 구성하고, 사용자가 메뉴를 선택하면 주문 목록에 해당 메뉴가 추가되며 총 주문 금액과 개수가 업데이트되도록 설계되었습니다. 세 자리마다 쉼표를 넣어 금액을 표시하여 사용자에게 가독성을 높였습니다. 초기화 버튼으로 주문 목록을 비울 수 있으며, 그리드 뷰를 사용해 메뉴를 시각적으로 깔끔하게 배치했습니다.import flet as ftdef main(page: ft.Page): page.title ="별다방 키오스크" page.theme_mode = ft.ThemeMode.DARK page.window.width = 750 page.window.height = 1200 page.scroll = "auto" page.padding = 20 ..

Flet GridView로 만든 계산기

GridView는 Flet에서 제공하는 매우 유용한 UI 컴포넌트 중 하나로, 여러 개의 항목을 그리드 형태로 배치하는 데 사용됩니다. 이 컴포넌트는 특히 많은 수의 항목을 간결하고 시각적으로 정렬된 방식으로 보여주고자 할 때 매우 유용합니다. 예를 들어, 사진 갤러리, 제품 카탈로그, 카드 스타일의 콘텐츠를 구성할 때 자주 사용됩니다.GridView는 Flet에서 항목들을 격자 형태로 배치하는 데 유용한 레이아웃 위젯입니다.runs_count, spacing, run_spacing, max_extent 등을 사용하여 그리드의 레이아웃을 조정할 수 있습니다.이미지 갤러리, 대시보드, 제품 목록 등 다양한 UI 패턴에 활용할 수 있으며, 사용자 경험을 향상시킬 수 있습니다.수직 및 수평 스크롤 모두 지원하..

Flet ListTitle

ListTitle은 Flet 프레임워크에서 제공하는 위젯 중 하나로, 리스트 항목을 보다 구조적으로 표현할 수 있도록 해주는 구성 요소입니다. ListTitle은 사용자가 리스트의 항목을 시각적으로 명확하게 구분하고 쉽게 상호작용할 수 있도록 설계되었습니다. 특히, 각 리스트 항목에 제목, 서브타이틀, 아이콘 등을 포함하여 더욱 풍부한 사용자 인터페이스(UI)를 만들 때 유용합니다. 클릭 이벤트를 처리하여 사용자와의 상호작용도 쉽게 구현할 수 있습니다. Flet 앱에서 자주 사용되는 UI 패턴인 메뉴 리스트나 설정 페이지 등에 매우 적합한 도구입니다.1. ListTitle 개요ListTitle은 Flutter의 ListTile과 유사한 개념으로, 리스트 항목에 기본적인 UI 요소들을 추가하여 항목을 풍부..

Flet ListView

ListView는 Flet에서 중요한 UI 컴포넌트 중 하나로, 많은 항목들을 스크롤 가능한 리스트 형태로 표시하는데 사용됩니다.ListView는 Flet에서 스크롤 가능한 목록을 만드는 데 사용됩니다.많은 항목을 효율적으로 표시할 수 있어 채팅, 데이터 목록 등 다양한 경우에 활용할 수 있습니다.속성으로는 spacing, padding, expand, auto_scroll 등이 있으며, scroll_direction을 통해 수평/수직 스크롤을 조절할 수 있습니다.Flet의 ListView는 데이터를 유연하고 효율적으로 보여주는 데 유용하며, 다양한 사용자 인터페이스에 쉽게 적용될 수 있는 강력한 도구입니다.1. Flet ListView 개요ListView는 스크롤 가능한 위젯으로, 여러 개의 자식 요소..

Flet 날씨 App

이 책에 포함된 날씨 어플리케이션은 flet를 이용해 UI를 구성하고, python_weather 라이브러리로 날씨 데이터를 가져옵니다. 이 앱은 사용자가 특정 도시를 입력하면 해당 도시의 날씨 상태(아이콘, 온도, 습도 등)를 표시합니다.비동기 처리를 통해 get_weather 함수가 날씨 데이터를 효율적으로 가져올 수 있도록 설계되었으며, flet의 다양한 UI 컴포넌트를 사용하여 간단하면서도 유용한 GUI를 구성하고 있습니다.import flet as ftimport python_weather# Functionsdef get_weather_icon(condition): if condition == "Thunderstorm": return '🌩️' elif condition ..

Flet Layout 배치(Column, Row, alignment, padding, margin...)

Flet에서 Columns와 Rows는 UI 요소들을 수평 또는 수직으로 배치하기 위해 사용하는 레이아웃 구성 요소입니다. 이들은 Flutter의 Column 및 Row와 비슷하며, 유연하게 UI를 구성할 수 있도록 도와줍니다.Column: 자식 요소들을 수직으로 나열하는 데 사용. 기본적으로 위젯들을 위에서 아래로 배치.Row: 자식 요소들을 수평으로 나열하는 데 사용. 기본적으로 위젯들을 왼쪽에서 오른쪽으로 배치.spacing과 alignment를 사용하여 요소들 간의 간격과 정렬을 설정할 수 있으며, 복잡한 레이아웃을 만들 때 이 두 가지를 유용하게 활용할 수 있습니다.중첩 사용을 통해 복잡하고 다양한 사용자 인터페이스를 구성할 수 있습니다.1. ColumnsColumns는 자식 요소들을 수직으로 ..

Flet Mobile App Layout

Mobile App의 기본 Layout 형태상단바 (AppBar): 햄버거 메뉴 아이콘과 설정 아이콘을 포함하며 중앙에 제목을 표시.하단 내비게이션바 (NavigationBar): 홈, 이메일, 검색으로 이동할 수 있는 탭 제공.플로팅 액션 버튼 (FloatingActionButton): 페이지 하단에 떠있는 추가 버튼, "추가"와 같은 기능 수행.중앙 영역 (Body): 로컬에 있는 이미지를 중앙에 위치시켜 표시.페이지 레이아웃: 상단에 AppBar, 중앙에 Body, 하단에 NavigationBar로 구성되어 전체적으로 모바일 앱과 유사한 사용자 경험을 제공합니다.import flet as ftdef main(page: ft.Page): page.title = "Page Layout" # ..

Flet 타이머

이 프로그램은 Flet 라이브러리를 사용하여 스톱워치 UI를 구현하고, 파이썬의 스레딩을 활용하여 타이머의 시간이 실시간으로 업데이트되도록 만듭니다. 사용자는 시작과 중지 버튼을 통해 스톱워치를 제어할 수 있으며, 시간은 시:분:초.밀리초 형식으로 정확하게 표시됩니다.코드의 실행 과정초기화: 프로그램이 실행되면 StopwatchApp 클래스의 인스턴스가 생성됩니다.UI 설정: run() 메서드를 호출하여 Flet 앱을 시작하고, main() 함수에서 UI를 설정합니다.타이머 동작:사용자가 "시작" 버튼을 클릭하면 타이머가 시작됩니다. 시간이 10밀리초마다 업데이트되어 화면에 표시됩니다."중지" 버튼을 클릭하면 타이머가 멈추고, 다시 클릭하면 타이머가 초기화된 상태로 대기합니다. import flet as..

Flet 계산기

주요 기능 및 사용 방법사용자는 텍스트 필드에 계산하고 싶은 수식을 입력합니다.사칙연산 버튼을 클릭하면 입력 필드에 해당 연산자가 추가됩니다."계산하기" 버튼을 클릭하면 입력된 수식이 계산되어 결과가 화면 하단에 표시됩니다.이 계산기는 eval 함수를 사용하여 입력된 수식을 평가하므로, 사용자가 잘못된 수식을 입력할 경우 오류 메시지가 표시됩니다. import flet as ftdef main(page: ft.Page): page.title="Flet 계산기" page.theme_mode = ft.ThemeMode.LIGHT # 결과를 표시하는 텍스트 위젯 result_text = ft.Text(value="", size=20) # 첫번째 텍스트 필드 (사용자가 수식을 입력하는..

Flet Button와 Event

Flet에서 버튼(Button)은 사용자와의 상호작용을 처리하는 중요한 위젯 중 하나입니다. 버튼을 사용하면 클릭 이벤트를 처리할 수 있으며, Flet에서 제공하는 여러 종류의 버튼이 있습니다. 각각의 버튼은 다양한 스타일을 제공하며, 주로 버튼 클릭 시 실행할 이벤트 핸들러 함수를 설정하여 동작을 제어합니다.다음은 Flet의 버튼 종류와 이벤트 처리 방법에 대한 설명입니다.1. Flet에서 제공하는 버튼 종류Flet은 다양한 버튼 스타일을 제공합니다. 주로 사용하는 버튼은 다음과 같습니다.1) ElevatedButton설명: Raised 버튼 스타일로, 약간의 그림자 효과가 있는 버튼입니다. 가장 일반적으로 사용되는 버튼 타입입니다.예시: import flet as ft def main(page: ..

Flet의 기본 구조 와 개발 가이드

Flet의 기본 구조는 Flutter와 유사하며, 위젯 기반으로 설계되어 있습니다. 이를 통해 사용자는 간단하게 UI 요소를 조합하고 애플리케이션을 만들 수 있습니다. Flet 애플리케이션은 주로 Page 객체를 중심으로 구성되며, 그 위에 다양한 위젯들을 추가하여 사용자 인터페이스를 구성합니다.  Flet의 기본 구조는 매우 직관적이며, 모든 것이 위젯과 이벤트 중심으로 이루어져 있습니다. 이를 통해 Python을 사용하여 복잡한 웹 애플리케이션을 쉽고 빠르게 개발할 수 있습니다. Page 객체는 앱의 전체 구조를 담당하며, 그 위에 다양한 UI 요소들을 추가하는 방식으로 애플리케이션이 구성됩니다. 다음은 Flet 애플리케이션의 기본 구조에 대해 설명한 예제입니다.Flet 기본 구조 예제import f..

Python with Flet - 설치

Flet은 Python을 사용하여, 웹, 모바일, 데스크탑 애플리케이션을 만들 수 있는 프레임워크입니다. Flet은 프론트엔드와 백엔드 모두를 Python으로 작성할 수 있게 해주며, Flutter를 기반으로 한 사용자 인터페이스(UI)를 제공하여 매우 직관적이고 쉽게 사용할 수 있습니다. 주요 특징은 다음과 같습니다:간단한 코드로 UI 구현: Flet은 Flutter의 위젯 시스템을 사용하여 버튼, 텍스트 필드, 리스트, 탭, 데이터 테이블 등 다양한 UI 컴포넌트를 제공하지만, Python 코드만으로 이 UI를 제어하고 표시할 수 있습니다.서버에서 실행: Flet 애플리케이션은 서버에서 실행되며, 사용자는 브라우저에서 해당 애플리케이션을 접근합니다. 즉, 프론트엔드와 백엔드를 한 번에 Python으로..

Windows 환경에서 Python 업그레이드 하기

Windows 환경의 파이썬(Python) 버전을 업그레이드하려면 다음 단계를 따라 하시면 됩니다. 기존의 파이썬 버전을 유지하면서 업그레이드할 수도 있고, 새로 설치한 파이썬 버전으로 기본 환경을 변경할 수 있습니다. 파이썬 업그레이드 절차1. 기존 파이썬 버전 확인현재 설치된 파이썬 버전을 확인하려면 cmd (명령 프롬프트)나 PowerShell을 열고 다음 명령어를 입력합니다:python --version이 명령어로 현재 설치된 파이썬 버전을 확인할 수 있습니다.2. 최신 파이썬 설치 파일 다운로드Python 공식 사이트로 이동하여 최신 파이썬 버전을 다운로드합니다.Windows용 설치 파일을 클릭하여 다운로드합니다.3. 파이썬 설치하기다운로드한 설치 파일을 실행합니다."Add Python to P..

시계열 데이터 다루기-색인을 가지는 시계열 데이터

색인을 가지는 시계열 데이터를 처리할 때, 판다스는 매우 유용한 도구입니다. 특히 시계열 데이터는 시간 정보를 인덱스로 사용하여 분석, 필터링, 변형 작업을 쉽게 수행할 수 있습니다. 여기서는 판다스를 사용하여 시계열 데이터의 색인을 설정하고 이를 활용한 기본적인 처리 방법을 설명하겠습니다. 테스트 데이터 생성# It appears the initial import and generation failed. Let's correct that and regenerate the file.import pandas as pdimport numpy as np# Generate sample data for data.csv with proper importsdata_csv = { "timestamp": pd.da..

시계열 데이터 다루기-datetime

파이썬의 datetime 모듈은 날짜와 시간을 처리하는 데 사용됩니다. 이 모듈은 날짜, 시간, 타임스탬프, 시간대 정보를 다루는 다양한 클래스를 제공합니다.1. datetime.date날짜를 연, 월, 일로 표현합니다. 이 클래스는 그레고리안 캘린더를 기반으로 날짜를 저장하고 조작할 수 있게 도와줍니다.import datetime# 특정 날짜 생성d = datetime.date(2024, 8, 19)print(d) # 2024-08-192. datetime.time하루의 시간을 시, 분, 초, 마이크로초로 표현합니다. 시간대 정보를 포함할 수도 있습니다.# 특정 시간 생성t = datetime.time(12, 30, 45, 123456)print(t) # 12:30:45.1234563. dateti..

데이터 그룹 연산(groupby)

파이썬에서 데이터 분석을 할 때, 데이터 그룹 연산은 매우 중요한 부분입니다. 특히 pandas 라이브러리는 이러한 연산을 쉽게 처리할 수 있도록 다양한 기능을 제공합니다. 여기서는 주로 groupby 메소드를 사용하는 방법에 대해 설명하겠습니다.1. groupby 기본데이터를 특정 기준에 따라 그룹화하고 각 그룹별로 다양한 집계 연산을 수행합니다.import pandas as pd# 예제 데이터 생성data = {'Name': ['John', 'Anna', 'John', 'Mike', 'Anna'], 'Score': [88, 92, 85, 91, 95], 'Subject': ['Math', 'Math', 'History', 'Science', 'Science']}df = pd...

데이터 분석 후 그래프와 시각화

Jupyter Notebook에서 대화형 Matplotlib 그래프를 사용하는 것은 데이터를 시각적으로 탐색할 때 매우 유용합니다. 이를 통해 사용자는 그래프를 동적으로 조작하고, 다양한 시각적 표현을 통해 데이터에 대한 통찰을 얻을 수 있습니다. 1. 필요한 라이브러리 설치먼저 Matplotlib를 사용하려면, 이 라이브러리가 설치되어 있어야 합니다. 아직 설치하지 않았다면, 다음 명령어로 설치할 수 있습니다:pip install matplotlib2. Matplotlib 설정 변경Matplotlib의 대화형 기능을 활성화하기 위해 Jupyter Notebook에서 몇 가지 설정을 변경해야 합니다. %matplotlib 매직 명령어를 사용하여 이를 설정할 수 있습니다. 대화형 모드를 위한 가장 일반적인..

Pandas의 DataFrame에서 Index 활용 및 데이터 관리

판다스(Pandas)의 DataFrame에서 인덱스는 데이터를 참조하고 조작할 때 중요한 역할을 합니다. 인덱스는 각 행에 대한 레이블을 제공하며, 데이터를 더 쉽게 정렬하고, 액세스하고, 수정할 수 있게 해줍니다. 인덱스에 대한 자세한 설명은 다음과 같습니다:1. 인덱스의 기능식별 기능: 각 행을 고유하게 식별합니다.정렬 기능: 데이터를 특정 순서로 유지하고, 이 순서대로 데이터를 정렬합니다.선택 기능: 인덱스를 사용하여 데이터의 특정 부분을 선택할 수 있습니다.조인 기능: 다른 DataFrame과의 조인 시 인덱스를 기준으로 사용합니다.2. 인덱스 생성 및 지정DataFrame을 생성할 때 index 매개변수를 사용하여 인덱스를 직접 지정할 수 있습니다. 예를 들어:import pandas as pd..

범주형 데이터 관리 Categorical

판다스(Pandas)의 Categorical 데이터 유형은 범주형 데이터를 효율적으로 다루기 위해 설계된 특수한 데이터 유형입니다. 이 데이터 유형은 특히 범주의 수가 제한적이고 반복적일 때 메모리 사용을 최적화하고 데이터 분석을 개선할 수 있도록 도와줍니다. 여기에 Categorical 데이터 유형에 대한 자세한 설명을 드리겠습니다.Categorical 데이터 유형의 기본판다스에서 Categorical 데이터 유형은 데이터를 범주(Category)로 구분할 때 사용됩니다. 예를 들어, "남성"과 "여성", "소형", "중형", "대형" 등과 같이 명확히 구분되는 값들을 범주형 데이터라고 할 수 있습니다. 이 데이터 유형은 내부적으로 정수를 사용하여 범주를 인코딩하며, 각 범주는 사전에 정의된 범주형 배..

Anaconda 설치 및 사용법

Conda를 설치하려면 Anaconda 또는 Miniconda를 사용할 수 있습니다. Anaconda는 데이터 과학과 기계 학습에 사용되는 많은 라이브러리를 포함한 포괄적인 패키지이며, Miniconda는 더 가볍고 필요한 패키지만 선택하여 설치할 수 있는 버전입니다. 설치 방법은 다음과 같습니다:Anaconda 설치다운로드Anaconda 공식 웹사이트에서 운영체제에 맞는 Anaconda 인스톨러를 다운로드합니다.설치Windows:다운로드한 .exe 파일을 실행하고, 화면의 지시에 따라 설치를 완료합니다. 모든 사용자를 위해 설치하거나, Just Me를 선택할 수 있습니다.설치 중에 "Add Anaconda to my PATH environment variable" 옵션은 기본적으로 체크 해제되어 있습니..

Scrapy, Pipelines

Scrapy 파이프라인Scrapy는 웹 크롤링과 스크레이핑을 위한 파이썬 프레임워크로, 웹 사이트로부터 데이터를 추출하고 이를 다양한 형식으로 저장할 수 있게 해줍니다. Scrapy 프로젝트의 중요한 구성 요소 중 하나는 파이프라인(pipeline)입니다. 파이프라인은 데이터 처리를 위한 일련의 과정을 정의하며, 크롤링 과정에서 수집된 아이템을 처리하고 저장하는 역할을 합니다. Scrapy 파이프라인의 주요 기능클린업: 수집된 데이터의 포맷을 정리하거나, 타이핑 오류를 수정하는 등의 클린업 작업을 수행합니다.유효성 검사: 아이템이 완전하고 유효한지 확인합니다. 예를 들어 필수 필드가 비어 있지 않은지 검사할 수 있습니다.아이템 중복 제거: 동일한 아이템이 여러 번 수집되는 것을 방지합니다.데이터 저장: ..

[추가자료] 8.3 웹 프레임워크 - Django Model

Django의 모델은 웹 애플리케이션의 데이터 구조를 정의하고 데이터베이스와의 상호작용을 처리하는 중요한 부분입니다. 모델은 Python 클래스로 표현되며, Django의 ORM(Object-Relational Mapping)을 통해 데이터베이스의 테이블과 매핑됩니다. 이를 통해 개발자는 복잡한 SQL 쿼리를 작성하지 않고도 데이터베이스를 효율적으로 관리할 수 있습니다.기본 구조모델은 django.db.models.Model 클래스를 상속받아 정의됩니다. 모델의 각 속성은 데이터베이스 테이블의 필드를 나타내며, Django에서 제공하는 필드 타입을 사용하여 선언합니다.from django.db import modelsclass Book(models.Model): title = models.CharF..

[추가자료] 8.3 웹 프레임워크 - Django Templates

Django의 템플릿 시스템은 동적 웹 페이지를 생성하기 위한 강력하고 유연한 방법을 제공합니다. 이 시스템은 웹 애플리케이션의 프론트엔드를 구성하는 HTML을 동적으로 처리할 수 있도록 설계되었습니다. Django 템플릿은 Python 코드에서 HTML 코드로 데이터를 전달하는 규칙에 따라 구성됩니다. 이를 통해 개발자는 웹 페이지의 로직과 디자인을 분리할 수 있어, 유지보수가 용이하고 코드의 가독성도 높아집니다.템플릿의 핵심 기능변수 치환: 템플릿에는 중괄호 {{ }}를 사용하여 변수를 포함시킬 수 있습니다. 이 변수들은 뷰에서 템플릿으로 전달된 컨텍스트 데이터를 참조하여 그 값을 템플릿에 동적으로 채워 넣습니다.태그 시스템: Django 템플릿은 {% %}를 사용하여 조건문, 반복문, 필터 등을 처..

[추가자료] 8.3 웹 프레임워크 - Django View

Django에서 뷰(View)는 웹 애플리케이션의 핵심 로직을 처리하는 컴포넌트로, 웹 요청을 받아서 웹 응답을 반환합니다. 뷰의 주된 목적은 요청의 세부사항을 캡슐화하고, 요청에 따라 필요한 데이터를 처리하여 적절한 응답을 생성하는 것입니다. 여기에는 HTTP 요청을 파싱, 세션 관리, 데이터 검증, 쿼리 실행, 템플릿 렌더링 등이 포함됩니다.Django ViewDjango의 뷰는 웹 애플리케이션의 로직과 데이터 흐름의 중심지로, 효율적이고 안전한 웹 서비스를 제공하기 위한 다양한 기능과 도구를 개발자에게 제공합니다. 1. 요청 처리Django에서 모든 뷰는 첫 번째 인자로 HttpRequest 객체를 받습니다. 이 객체는 사용자의 요청에 대한 모든 정보를 담고 있으며, 뷰에서는 이 정보를 사용하여 필..

[추가자료] 8.3 웹 프레임워크 - Django 소개

Django는 고급 웹 애플리케이션을 빠르게 개발하기 위한 고수준의 파이썬 웹 프레임워크입니다. "Don't repeat yourself" (DRY) 원칙을 따르는 것을 목표로 하여, 반복적인 작업을 줄이고 개발 시간을 단축할 수 있도록 설계되었습니다. 여러분야에서 유용하게 사용될 수 있는 Django의 특징과 기능을 살펴보겠습니다.주요 특징객체 관계 매핑 (ORM):Django ORM은 데이터베이스 테이블을 파이썬 클래스로 표현합니다. 이를 통해 복잡한 SQL 쿼리 없이도 데이터베이스를 쉽게 조작할 수 있습니다.자동화된 관리 인터페이스:Django는 모델에 대해 자동으로 생성되는 관리 인터페이스를 제공하여, 관리자가 데이터베이스를 쉽게 관리할 수 있게 합니다.뛰어난 보안:Django는 보안 측면에서 많..

REST API 데이터 시각화

이 파이썬 코드는 GitHub API를 통해 가장 많은 별을 받은 Python 프로젝트를 찾아 그 결과를 시각화합니다.  pip install requests # 라이브러리 추가 python_repos_visual.pyimport requestsimport plotly.express as pxdef call_api(): url = "https://api.github.com/search/repositories" url += "?q=language:python+stars&sort=stars&order=desc&page=1&per_page=10" headers = {"Accept": "application/vnd.github.v3+json"} r = requests.get(url, hea..

GeoJSON 데이터 파일을 이용한 세계 지진의 크기와 위치 시각화

이 파이썬 스크립트는 지진 데이터를 포함한 GeoJSON 파일을 읽고, 해당 데이터를 활용하여 전 세계 지진의 크기와 위치를 시각화하는 기능을 수행합니다.import jsonfrom pathlib import Pathimport plotly.express as pxdef read_geo_json_data(): # 데이터를 문자열로 읽어 파이썬 객체로 변환합니다. path = Path('eq_data/eq_data_30_day_m1.geojson') contents = path.read_text(encoding='utf-8') all_eq_data = json.loads(contents) # 데이터 파일을 더 읽기 쉬운 형태로 바꿉니다. # path = Path('eq_da..

728x90