Python29 파이썬 map 함수를 알아보자 리스트를 [1, 2, 3, 4, 5] --> [10, 20, 30, 40, 50] 과 같이 변환하려면 어떻게 할까? 먼저, 생각나는 것은 for 문을 사용해볼 수 있을 것이다.list_orig = [1, 2, 3, 4, 5]list_result = []for num in list_orig: list_result.append(num * 10)print(list_result)이것을 map 함수로도 구현할 수 있는데, map 함수의 형식을 먼저 살펴보자.map(조작함수, 순회가능한객체)조작함수 부분은 위의 for 구문에서 num * 10 의 기능을 해주는 함수이고, 순회가능한객체는 리스트, 튜플 등이 해당된다.일단 조작함수부터 구현해보자.def mul_ten(num): return num * 10 .. Programming/Python 2024. 11. 26. 파이썬 lambda 함수 lamda 함수란, 한줄짜리 짧은 이름없는(익명) 함수 일반적인 함수의 사용예def add(x, y): return x + yprint(add(10,20))# 파이썬에서 함수는 객체이며, 변수에 저장이 될 수 있다.add2 = addprint(add2(10,20)) lambda 함수 기본형태lambda 인자: 리턴값 사용예result = (lambda x, y: x + y)(10, 20)print(result) # 람다 함수를 변수에 넣는다.add3 = lambda x, y: x + yprint(add3(10,20)) 이런식으로 리스트에도 넣을 수 있다. 이것은 일반 함수도 가능한 일이다.lambda_list = [lambda x: x+10, lambda x:x+100]print(lambda_lis.. Programming/Python 2024. 11. 15. 파이썬 타입 힌트 알아보기 다들 알고 있는 것처럼, 파이썬은 동적 타입 언어이다. 이 것은 변수의 타입을 지정하지 않고, 모든 타입의 데이터를 넣을 수 있다는 말이다. 반면에 Java 와 같은 정적 타입 언어는 변수 선언시에 타입을 반드시 지정하고 해당 타입의 데이터만 넣을 수 있는데, 만약, 다른 타입의 데이터를 넣게 되면, IDE 등에서 에러표시를 해줄 것이며, 컴파일할 때에도 에러를 뿜어내고 컴파일 실패하게 된다.public class Hello { public static void main(String[] args) { int num; // num = 10; num = "Hello Java"; System.out.println(num); }} 반면에, 파이썬은 다.. Programming/Python 2024. 11. 5. [ ... for ... if ... ] 파이썬 리스트 내포 구문 (List comprehension) 리스트 내포 (list comprehension) 은 짧은 코드로 원하는 리스트를 만들어주는 문법이다. 잘~ 사용하면 유용하긴 한데, 이해가 안되면 오히려 가독성이 떨어지는 문제가 있다. 팀원들의 이해도에 맞추어서 적절하게 사용하길 바란다. 첫번째 경우를 살펴보도록 하자.# result = [10, 20, 30, 40, 50]result = []for i in range(1, 5+1): result.append(i*10)print(result)result = [i*10 for i range(1, 5+1)]print(result)이제, 조건을 넣어보자.# result = [20, 40]result = []for i in range(1, 5+1): if i % 2 == 0: resul.. Programming/Python 2024. 11. 1. FastAPI (3) : DB(PostgreSQL) 붙여보기 이번에는 FastAPI 프레임워크에 PostgreSQL 을 붙여서 동작시켜보자. 우선, scoop 을 이용해서 PostgreSQL을 설치해준다. scoop install postgresql 을 실행한다.pg_ctl start 를 입력해서 PostgreSQL을 기동합니다.psql -U postgres 를 입력해서 PostgreSQL에 관리자로 로그인합니다.다음처럼 새로운 사용자 계정을 생성합니다. 사용자 이름과 비밀번호는 원하는 것으로 설정하면 되겠습니다.그리고, Database 를 생성합니다. 데이터베이스 이름은 test_db 로 하였고, 소유주는 test_user 로 하였습니다.\q 로 PostgreSQL에서 빠져나와서 새로 새성한 사용자로 로그인해봅니다.새로운 테스트용 테이블도 생성해봅니다.CREAT.. Framework (Backend)/FastAPI 2024. 10. 18. FastAPI (2) : 컨트롤러 확장하기 앞에서 간단하게 FastAPI 프로그램을 만들어보았는데, 이대로 작성을 하면, API가 늘어날 수록 main.py 파일 점점 내용이 많아지고 커질거에요. 그러면, 코드 유지보수에 문제가 있으니, API들을 분류를 해서 분리할 필요가 있습니다. 보통 컨트롤러(controller)라는 이름으로 분리를 합니다. FastAPI 에서는 이것을 라우터(router)라고 표현합니다. 저는 router 라는 이름보다는 controller 를 선호합니다. 기존에 작성했던 코드에서 /items API가 이었는데, 이것을 별도의 컨트롤러로 분리를 해봅시다. C:\work\fapi 폴더 아래에 controller 폴더를 만듭니다.그리고, 비어있는 __init__.py 파일을 만들어주고, items.py 도 만들어줍니다.# .. Framework (Backend)/FastAPI 2024. 10. 15. FastAPI (1) : 시작해보기 Python 에는 유명한 웹프레임워크가 3개 있어요. Django, Flask, FastAPI 입니다. 이 중에서 골라서 취향에 맞추어서 사용하면 되는데요. 저는 이 중에서 FastAPI 가 제 취향에 맞습니다. FastAPI 가 이름에서도 알 수 있지만, 이 중에서 성능이 2배나 좋다고 합니다. 그리고, 저는 API서버로만 사용할 것이라서 좀 더 간결하게 작성할 수 있는 FastAPI가 좋습니다. 이제, 시작해볼까요. 먼저, C:\work\fapi 라는 이름으로 작업폴더를 만들어줍니다. 해당 폴더에서 venv 로 가상환경을 만들고, 가상환경을 활성화해주세요.fastapi 모듈을 설치합니다.설치한 후에 pip list 로 설치된 모듈을 확인해봅니다. 대략 이정도의 모듈들이 설치되네요.uvicorn 도 설.. Framework (Backend)/FastAPI 2024. 10. 11. .py(파이썬파일)을 .exe(실행파일)로 변환하기 (feat. PyInstaller) 파이썬으로 만든 프로그램을 다른 사람에게 전달해서 실행을 하려면, 그 사람의 PC에도 파이썬이 설치되어 있어야 하는 번거러움이 있다. 이 때문에, 파이썬 프로그램을 일반 실행파일(.exe)로 변환해서 건네주면 사용하는데 큰 문제가 없을 것이다. 파이썬 패키지에는 이런 변환 프로그램이 있는데, 바로 PyInstaller 이다. pip install pyinstaller 를 입력하면 설치가 되서 바로 사용할 수 있다. 첫 번째 프로그램을 만들어보자. 필자는 C:\work\proj1 폴더를 만들 것이며, 이 안에 .venv 로 가상환경도 만든다. 가상환경은 python -m venv .venv 로 만들 수 있다. 그리고, .venv\Scripts\activate 로 가상환경을 활성화 한 후에, pip inst.. Programming/Python 2024. 9. 21. venv : 파이썬 가상환경 관리하기 nodejs 를 공부해보신 분들은 알겠지만, npm 을 이용해서 필요한 패키지를 설치하면 해당 프로젝트 안에 node_modules 라는 폴더가 생성되는 것을 알 수 있다. 이 아래에 모든 패키지들이 설치된다. 이렇게 되면, 여러개의 프로젝트를 관리할때 프로젝트마다 각기 다른 폴더에 패키지들이 설치되어 서로 충돌이 발생하지 않는다. 물론 필요하면 특정 패키지에 대해서는 옵션을 주어서 전역으로도 설치가 가능하다. 그런데, 파이썬의 경우, 패키지가 기본적으로 전역으로 설치되어, 모든 프로젝트에서 함께 쓰이도록 되어 있다. 프로젝트에 별도로 패키지가 설치되도록 하는 옵션이 없다. 이 때문에, 프로젝트간에 패키지의 버전을 다르게 쓰고자 할 때 문제가 발생한다. 이런 문제를 해결하고자, 임시 방편으로 가상환경이라.. Programming/Python 2024. 9. 19. pyenv : 여러 버전의 파이썬을 설치하고 관리하기 가장 일반적으로 파이썬을 설치하려면 공식사이트에서 설치프로그램을 다운로드하여 설치하면 간단하다. 아니면, scoop 이나 chocolaty 등을 이용해서 설치해도 좋다.그런데 말입니다....파이썬 프로젝트가 여러개 있고, 각기 다른 버전의 파이썬을 사용해야 한다면 이대로는 안될 것이다. 여러 버전을 설치해놓고, 그때 그때 상황에 맞게 파이썬 버전을 선택할 수 있으면 좋을 것이다. 이 것을 가능하게 해주는 것이 바로 바로 pyenv 이다. 우선, pyenv 를 설치부터 진행하자. 설치는 scoop 으로 하겠다.scoop 말고 다른 방법으로 하려면 https://github.com/pyenv-win/pyenv-win 에 들어가서 원하는 것으로 하면 되겠습니다.이 상태에서 python 3.10.5 를 설치해볼.. Programming/Python 2024. 9. 9. Windows 에 Python설치하고 첫 프로그램 만들어보기 Python을 Windows 에 설치할 수 있는 2가지 방법을 알아보자. 우선, 웹브라우저를 통해서 파이썬의 공식사이트 https://www.python.org 에 접속해본다.Downloads 메뉴 위에 마우스를 올려서 팝업메뉴가 나오면 Python 3.12.5 버튼을 클릭해서 Python 설치 파일을 다운로드 한다.다운로드한 설치 파일 (python-3.12.5-amd64.exe)를 더블클릭해서 실행한다.Add python.exe to PATH 에 체크해두고 Install Now 를 선택한다.위와 같은 화면이 나오면 설치가 완료된 것이다. 이제, 명령프롬프트에서 python -V 라고 입력하면, 설치된 Python 의 버전이 표시될 것이다. 성공~!!!이렇게 해서, Python을 설치하는 첫번째 방법을.. Programming/Python 2024. 9. 2. (Python) Disk IO (Write Count) 모니터링 Python 으로 서버의 Disk IO 를 측정/모니터링 해보자. # ------------------------------------------------------------------------------ # Disk IO (Write Count) 모니터링 # ------------------------------------------------------------------------------ import os import sys import time # pip install psutil 으로 먼저 설치 import psutil # pip install pymssql 으로 먼저 설치 (MS-SQL을 사용하는 경우) import pymssql interval = 60 disk_io_over = .. Programming/Python 2014. 12. 1. 이전 1 2 3 다음