본문 바로가기
반응형

Python18

파이썬 turtle 라이브러리 import turtle turtle.title('거북이') turtle.color('black', 'red') turtle.shape('turtle') turtle.penup(); turtle.write("빠른 거북이!!") turtle.forward(80) turtle.pendown(); turtle.backward(100) turtle.exitonclick() 수행해보니 이번엔 속도가 너무 빠르네요. 속도값은 다음과 같습니다. 0: 가장 빠른 1: 가장 느린 3: 느린 6: 보통 (기본값) 10: 빠른 지금 기본값이 보통 이라고? 너무 빠른데요. 1로 변경해보겠습니다. import turtle turtle.title('거북이') turtle.color('black', 'red') turtle.sha.. 2024. 4. 2.
Tkinter 기본 활용 예전에 테스트삼아 해봤는데, 오랫만에 하니까 잘 모르는 것도 있고, 좀 바뀐 부분도 있어서 정리도 할겸 올립니다. 아래와 같은 tkinter 화면을 만들겁니다. 1. main.py 우선 main.py에서는 구동만 시켜주고, 화면을 구성하는 파일은 gui.py로 별도 모듈로 만들 예정입니다. import gui if __name__ == '__main__': gui.main_screen() 2. gui.py import tkinter as tk def main_screen(): root = tk.Tk() root.title("GUI Sample") root.geometry("640x480+100+100") root.resizable(True,True) root.configure(background='whi.. 2024. 3. 28.
파이썬 정적 사이트 생성기(SSG) 펠리칸 (Pelican) 시작하기 파이썬하면 요즘 ML/DL, 데이터분석 등으로 엄청난 인기를 끌고 있는데요. 웹프로그래밍에서도 매우 많은 인기가 있습니다. 우리나라에서는 점유율이 많이 못미치지만, 해외에서 Django, FastAPI등은 매우 좋은 반응을 보이고 있습니다. 오늘 소개할 도구는 Django나 FastAPI와 같은 서버도구는 아닌, 파이썬으로 만들어진 정적사이트 생성기 펠리칸(Pelican)입니다. 1. 설치 우선 일반적인 파이썬 프로젝트 시작방법과 마찬가지로 가상환경을 만들어줍니다. (pycharm을 활용하면 쉽게 가상환경이 만들어집니다. VSCode로 진행하면 조금 까다로우니, 다른 포스팅을 참고하세요). 가상환경이 만들어지면 아래의 pip install ~ 로 pelican을 설치합니다. pip install peli.. 2023. 7. 25.
파이썬 데이터분석 1 openpyxl로 엑셀 다루기 파이썬으로 엑셀 파일을 불러오고 데이터 다루는 가장 기본적인 라이브러리인 openpyxl에 대해 알아보도록 하겠습니다. [ 목차 ] 1. Openpyxl 설치 $ pip install openpyxl 2. 파일 생성 import openpyxl # 새로운 엑셀 파일 생성 wb = openpyxl.Workbook() # 새로운 시트 추가 sheet = wb.active # 셀에 데이터 쓰기 sheet['A1'] = '가나다' sheet['B1'] = '라마바사아' # 엑셀 파일로 저장 wb.save('example.xlsx') 3. 파일 열기 import openpyxl # 기존 파일 열기 wb=openpyxl.load_workbook('example.xlsx') #파일명 혹은 패스+파일명 입력 # she.. 2023. 7. 14.
파이썬보다 35,000배 빠른 언어 모조 (Mojo) 오랫만에 Python 관련 포스팅을 하나 할까 합니다. 최근에 Python보다 35,000배 빠른 언어가 나타났다는 기사를 봤습니다. 잉? 뭐지? 인터프리터 언어가 아닌건가? 속도로만 치면 빠른 언어는 많은데...무슨 소리지? 하는 궁금증이 들더군요. 오늘은 Python의 새로운 대안언어라는 타이틀을 들고 나온 "Mojo언어"에 대해 알아보도록 하겠습니다. Mojo � Mojo 🔥: Programming language for all of AI Mojo combines the usability of Python with the performance of C, unlocking unparalleled programmability of AI hardware and extensibility of AI mode.. 2023. 7. 13.
Python 머신러닝 라이브러리 비교 : Scikit-learn, TensorFlow, Keras 및 PyTorch 파이썬은 기계 학습 및 데이터 과학에서 가장 인기 있는 언어 중 하나로 부상했습니다. 다양한 기능을 제공하고 다양한 요구를 충족하는 풍부한 머신 러닝 라이브러리 생태계를 제공합니다....라고 하는데. 한번 시작해볼까 하다가도 라이브러리가 너무 많이 존재해서 뭐가뭔지 잘 모르겠네요. 그래서 그 중 가장 유명한 네 가지 파이썬 머신러닝 라이브러리인를 비교해보고자 합니다. 1. Scikit-learn: Scikit-learn은 전통적인 기계 학습 작업에 널리 사용되는 라이브러리입니다. 데이터 전처리, 피쳐 추출, 모델 선택 및 평가를 위한 포괄적인 도구 세트를 제공합니다. Scikit-learn의 주요 기능은 다음과 같습니다: - 간단하고 직관적인 API를 제공하므로 다양한 수준의 전문 지식을 가진 사용자가 .. 2023. 5. 16.
파이썬 폴리움(folium) 라이브러리 시군구별 데이터 표시 시군별 평균수입/총수입 자료를 지도에 매핑해서 나타내보도록 하겠습니다. 아래의 자료는 시군별 평균수입/총수입 자료입니다. 한가지 추가로 필요한 파일이 시군구 지형자료입니다. 아래의 파일도 같은 프로젝트 폴더에 저장하고 실행합니다. import folium as g import json import webbrowser import pandas as pd g_map = g.Map(location=[37.4, 127], tiles='cartodbpositron', # tiles = 'Stamen Terrain', zoom_start=7) geo_data = json.load(open('skorea_municipalities_geo_simple.json', encoding='utf-8')) df = pd.rea.. 2023. 2. 13.
파이썬으로 폴더 내 파일명 일괄 수정하기 특정 폴더의 파일 전체에 대해서 일괄 수정하는 기능을 구현해 보았습니다. add_string 함수는 파일명에 접두사와 접미사를 붙여서 출력하는 기능이고, change_string 함수는 파일명에 특정 문자열을 다른 문자열로 바꾸는 기능입니다. 우선은 파일명을 확인하는 부분까지만 구현하고, 실제 변경하는 부분은 주석 처리하였습니다. 사용하실 분은 해당 부분 주석 해제후 사용하세요. import os def add_string(path, prefix, suffix): for filename in os.listdir(path): name_only, ext = filename.split('.') # 파일명과 확장자로 분리 print(name_only, ext) new_name = prefix + name_onl.. 2022. 11. 5.
Python 키보드로 소리내기 피아노 연주하기 키보드 입력에 맞추어 비프음을 내도록 하겠습니다. 이번 프로그램을 위해서는 비프음을 내도록 하는 windsound 모듈과 키보드 인풋을 받아들이는 pynput 모듈이 필요합니다. 그 중 windwound 모듈은 기본으로 내장되어있으니 pynput 모듈만 설치해주도록 합니다. 1. 라이브러리 설치 pip install pynput 2. pynput모듈 pynput 모듈에서는 on_press 이벤트와 on_release 이벤트에 대해 리스너를 통해 입력받는 방법이 있습니다. from pynput import keyboard def on_press(key): print('Pressed Key: %s' % key) def on_release(key): print('Pressed Key: %s' % key) if.. 2021. 10. 13.
파이선 kivy 시작하기4 - 파일 관리(file chooser) 파일관리 프로그램 예제입니다. ## File Chooser from kivy.app import App from kivy.uix.gridlayout import GridLayout class TopGridLayout(GridLayout): def selected(self, directory, filename): try: self.ids.image.source = filename[0] except: pass class TreeApp(App): def build(self): return TopGridLayout() if __name__ == '__main__': TreeApp().run() : cols:2 id:my_widget #FileChooserIconView: FileChooserListView: i.. 2021. 9. 25.
Python - 엑셀 자료 분석(셀 참조 with xlwings) 오늘은 KB 부동산시세 사이트에서 제공하는 데이터를 이용해 각 셀의 값을 참조하는 방법에 대해 알아보겠습니다. 테스트를 위해 엑셀은 서식을 없애고 숫자만 표시되도록 했는데요, 아래의 엑셀 차트에 대해 일정 범위별로 수식을 적용하여 색깔을 표시하도록 하는 방법을 알아보겠습니다. (물론 엑셀 활용 측면에서는 조건부 서식으로 지정하는 것이 더 간단할 수도 있습니다만, xlwings 공부하는 차원에서 봐주시기 바랍니다.) 1. 엑셀 매크로 추가 엑셀 파일의 이름은 pyxl.xlsm으로 매크로가 가능한 엑셀파일 형태로 저장해둡니다. 그리고 엑셀에서 Python 코드를 불러올 수 있도록 VBA를 작성해줍니다. Sub some_code() mymodule = Left(ThisWorkbook.Name, (InStrRe.. 2021. 2. 4.
Python - 엑셀에서 파이썬 매크로 사용하기(xlwings 설치) 현대 사회에서 엑셀의 지위는 정말... 이걸 빼고서는 업무를 상상할 수 없을 정도로 막강한데요,,, 한가지 아쉬운 점이 매크로를 작성할 때 Visual Basic을 사용한다는 것입니다. 그게 무슨 아쉬운 점이냐 하실 수도 있는데, VBA라고 하는게 처음에는 쉽다고 해서 접근해보면 딱히 쉽진 않죠. 프로그래머들도 어렵다는 VBA니까요. 물론 프로그래머는 VBA를 집중해서 파기보다는 다른 자신만의 언어(Java, Python, C# 등)가 있으니까 그럴 수도 있겠지만요. 하지만 파이썬은 전문 프로그래머들 뿐만 아니라 일반인들도 많이 쓰는 언어가 되어가고 있습니다. 우선 쉬우니까요. 물론 깊이 들어가면 결국 비슷하게 어려운 부분이 있지만,,, 개인적인 느낌으로는 VBA보다 쉽습니다. 가독성이 너무 좋습니다. .. 2021. 2. 3.
Flask - IIS연동 IIS와 Flask 연동하는 방법에 대한 기록을 남깁니다. 1. flask 설치 pip install flask 2. wfastcgi설치 pip install wfastcgi 3. wfastcgi실행 c:\>wfastcgi-enable python.exe | wfastcgi.py 파일 경로 복사/기록 4. 테스트용 hello.py파일 작성( 예: E:\02_Programming_Work\06_Python\08_flask) 주소창에서 "localhost:7000/" 과같이 입력하면 이 파일에 의해서 Hello Flask!라는 텍스트를 나타내게 합니다. #hello.py from flask import Flask app=Flask(__name__) @app.route('/',methods=['GET']) d.. 2020. 10. 23.
Flask - mysql 연동 오늘은 Flask와 MySQL의 연동에 대해 알아보겠습니다. 진행할 과제는 1. DB 생성 2. Flask APP 구성 3. DB 모듈 생성 (mod_dbconn.py) 4. DB 연결 (__init__.py) 5. DB data 출력 (db.html) 의 순으로 진행하겠습니다. 1. DB 생성 이전 포스팅에서 설치한 XAMPP를 이용하여 MySQL을 실행하고 진행하겠습니다. XAMPP에서 Apache와 MySQL을 Start 해 줍니다. (Apache를 실행해야 MySQL 서버가 실행됩니다.) 다음으로 커맨드 창을 열고 비밀번호를 설정해 줍니다. 그리고서 XAMPP 컨트롤 창의 MySQL의 Admin 버튼을 누르거나 직접 URL을 입력하여 phpmyadmin사이트로 이동합니다. (로그인이 안될 수 있습.. 2020. 8. 21.
Django - Oracle연동 (11g), inspectdb 사용법 아...힘든 하루네요. 회사에서 쓰는게 oracle 11g 2Release 32bit라서 이걸 모델로 집에서 django랑 연동 테스트 해보려고 삽질을 시작했는데... 오전 9:30분에 시작해서 지금, 오후 10:00에서야 드디어 완성했습니다. 그것도 완전한 완성이라고 볼 순 없고 부분적으로 모자란 부분이 있습니다. 오늘 최종적으로 성공한 각 프로그램/모듈의 버전은 아래와 같습니다. oracle 11g 2Release 64bit Python 3.6.1 64bit Django 1.11.22 cx_Oracle 6.3 32비트고 뭐고 왔다갔다 하느라 정신없어서..64비트로 우선 통일! 안되는 영어로 계속 뒤져보니까 요즘나오는 Django 3.0이나 2.X대 버전은 oracle 11g를 지원을 안한다고 합니다... 2020. 5. 21.
Django - CSS적용하기 Django에 CSS를 적용하는 방법은 어렵지 않은데... 적용하려면 저같은 초보한테는 쉽지않네요. 우선 기록으로 남겨놓습니다. 1. mysite/setting.py의 STATIC정보를 수정/확인합니다. STATIC_URL = '/static/' STATICFILES_DIRS = ( os.path.join('static'), ) 2. CSS파일 생성(style.css)하여 아래 경로에 위치시킵니다. mysite/static/css/style.css li a { color: green; } 3. HTML에 static file 로딩부분을 추가해줍니다. {% load static %} # 버전에 따라 staticfiles ~~끝~~ (ps) 각 앱별로 static파일을 정의해놓았을 경우, STATICFILE.. 2020. 5. 13.
Python-Oracle연동 Python로 Oracle Database에 연결하기 위해서는 cx_oracle 모듈을 설치해야 합니다. 설치 방법은 어렵지 않은데 Pycharm과 일반 커맨드창 파이썬에서 실행하는 방법을 나눠 설명하겠습니다. 1. 우선 주로 쓰는 Pycharm에서는 File - Settings - Project - Project Interpreter 로 진입합니다. 그리고 cx_Oracle 모듈을 찾아서 설치해 줍니다. 2. Command창에 설치해서 사용하는 경우라면, sudo pip install cx_oracle 로 설치할 수 있습니니다. 3. Oracle Client 설치 cx_Oracle을 사용하려면 Oracle Client를 설치해주어야 합니다. Oracle이 설치되어있어도 Library 때문에 필요한 것으.. 2020. 2. 25.
Python GUI - tkinter 예제 회사에서는 예전에 만들어둔 Visual Basic 6.0을 어쩌지 못해 계속 사용하고 있습니다. 저는 그 유지보수 담당입니다. 다른 언어로 갈아 엎고는 싶지만,,, 온지 얼마 안돼서..아니, 실력이 아직 한참 모자라서 그냥 유지보수 중입니다. 그러나 마음만은 항상 다른 언어로 포팅하려고 준비하고 있습니다. 배포가 편리한 Java를 유력 후보로 생각하고 있는데요..(C# 안사줌..ㅠㅠ) 그 전에 간단한 프로그램 프로토타입 설계를 위해 tkinter를 손대보기로 했습니다. 결론은, 필요한 기능 그때그때 불러다 쓸 기본 위젯 종합 선물세트를 만들었습니다. 필요할 때 골라 쓰려구요. 실행하면 이런 gui프로그램이 나오게 될 것입니다. 그리고, 소스는 https://076923.github.io/ 사이트를 참조했.. 2020. 2. 25.
반응형