Python
-
gunicorn으로 서버를 실행하니 다음과 같은 에러가 나왔습니다. gunicorn app:app --bind 127.0.0.1:8020 [ERROR] Error handling request /docs Traceback (most recent call last): File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sync.py", line 135, in handle self.handle_request(listener, req, client, addr) File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sy..
TypeError: FastAPI.__call__() missing 1 required positional argument: 'send'gunicorn으로 서버를 실행하니 다음과 같은 에러가 나왔습니다. gunicorn app:app --bind 127.0.0.1:8020 [ERROR] Error handling request /docs Traceback (most recent call last): File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sync.py", line 135, in handle self.handle_request(listener, req, client, addr) File "/home/user/anaconda3/envs/forge/lib/python3.10/site-packages/gunicorn/workers/sy..
2024.03.19 -
Python if-else 문을 사용하여 코드를 최적화하는 몇 가지 팁을 공유하겠습니다. -> 삼항 연산자를 사용하세요 삼항 연산자는 간단한 if-else 문을 한 줄로 작성하는 간단한 방법입니다. 다음과 같은 구문이 있습니다. result = trueValue if condition else falseValue 이는 다음과 같습니다. if condition: result = trueValue else: result = falseValue 삼항 연산자를 사용하면 일부 코드 줄을 절약하고 코드를 더욱 간결하고 우아하게 만들 수 있습니다. 예를 들어, 학생의 점수에 따라 학생에게 성적을 할당한다고 가정해 보겠습니다. 다음과 같이 삼항 연산자를 사용할 수 있습니다. score = 85 grade = "A" i..
전문가처럼 Python If-Else 문 사용하기Python if-else 문을 사용하여 코드를 최적화하는 몇 가지 팁을 공유하겠습니다. -> 삼항 연산자를 사용하세요 삼항 연산자는 간단한 if-else 문을 한 줄로 작성하는 간단한 방법입니다. 다음과 같은 구문이 있습니다. result = trueValue if condition else falseValue 이는 다음과 같습니다. if condition: result = trueValue else: result = falseValue 삼항 연산자를 사용하면 일부 코드 줄을 절약하고 코드를 더욱 간결하고 우아하게 만들 수 있습니다. 예를 들어, 학생의 점수에 따라 학생에게 성적을 할당한다고 가정해 보겠습니다. 다음과 같이 삼항 연산자를 사용할 수 있습니다. score = 85 grade = "A" i..
2024.03.18 -
Python 개발자라면 파이프라인 이라는 용어를 들어보셨을 것입니다 . 파이프라인이란 정확히 무엇이며 왜 유용한지 개념, 작동 방식, 더 깔끔하고 효율적인 코드를 작성하는 데 어떻게 도움이 되는지 살펴보겠습니다. 파이프라인이란? 파이프라인은 메서드에 인자를 넣었을때 출력값을 바로 다음 메서드에 넣어서 출력값을 얻고 또 그 값을 여러 메서드를 거쳐 최종값을 얻는 방식입니다. 예를 들어, 숫자 목록이 있고 숫자 목록에 대해 다음 작업을 수행하려고 한다고 가정합니다. 홀수를 필터링하세요. 각 숫자에 10을 곱하세요. 각 숫자에 5를 더하세요. 결과 숫자의 평균을 계산합니다. 보통 위의 조건의 로직을 코딩할때 목록을 반복하고 각 작업을 하나씩 적용하여 중간 결과를 새 목록에 저장하는 루프를 작성합니다. code..
Python 파이프 | pipe 사용법!(How to use Pipeline in python)Python 개발자라면 파이프라인 이라는 용어를 들어보셨을 것입니다 . 파이프라인이란 정확히 무엇이며 왜 유용한지 개념, 작동 방식, 더 깔끔하고 효율적인 코드를 작성하는 데 어떻게 도움이 되는지 살펴보겠습니다. 파이프라인이란? 파이프라인은 메서드에 인자를 넣었을때 출력값을 바로 다음 메서드에 넣어서 출력값을 얻고 또 그 값을 여러 메서드를 거쳐 최종값을 얻는 방식입니다. 예를 들어, 숫자 목록이 있고 숫자 목록에 대해 다음 작업을 수행하려고 한다고 가정합니다. 홀수를 필터링하세요. 각 숫자에 10을 곱하세요. 각 숫자에 5를 더하세요. 결과 숫자의 평균을 계산합니다. 보통 위의 조건의 로직을 코딩할때 목록을 반복하고 각 작업을 하나씩 적용하여 중간 결과를 새 목록에 저장하는 루프를 작성합니다. code..
2024.03.17 -
파이썬으로 자동화할때 죽지않고 계속 일정 간격으로 명령어를 실행하는 스크립트가 필요할때가 있다. 답은 daemon을 사용하면 된다. 코드부터 보자 import socket import subprocess import time import os import sys import daemon from daemon import pidfile from daemon import runner import argparse def runPortChecker(): while True: time.sleep(5) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) result = sock.connect_ex(('127.0.0.1', 8000)) # ip, port if res..
python 죽지않는 daemon 스크립트 짜기파이썬으로 자동화할때 죽지않고 계속 일정 간격으로 명령어를 실행하는 스크립트가 필요할때가 있다. 답은 daemon을 사용하면 된다. 코드부터 보자 import socket import subprocess import time import os import sys import daemon from daemon import pidfile from daemon import runner import argparse def runPortChecker(): while True: time.sleep(5) sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) result = sock.connect_ex(('127.0.0.1', 8000)) # ip, port if res..
2024.03.07 -
웹 브라우저에서 컴퓨터를 켰을때나 특정 일을 반복할때 유용한 자동화 테크닉이다. 코드부터 보자 우선 열려 있는 브라우저를 찾아야한다 아래는 크롬 브라우저를 찾는 함수다. # Chrome 브라우저 창을 찾는 함수 def findChromeWindow(): try: # xdotool 명령어 실행하여 Chrome 브라우저 창의 ID 가져오기 cmd = "xdotool search --onlyvisible --class Chrome" chromeWindowId = os.popen(cmd).read().strip() print('chromeWindowId', chromeWindowId) return chromeWindowId except Exception as e: print(f"오류 발생: {e}") retur..
python으로 xdotool을 사용해서 크롬 브라우저를 찾아 특정 포인트를 클릭해보자웹 브라우저에서 컴퓨터를 켰을때나 특정 일을 반복할때 유용한 자동화 테크닉이다. 코드부터 보자 우선 열려 있는 브라우저를 찾아야한다 아래는 크롬 브라우저를 찾는 함수다. # Chrome 브라우저 창을 찾는 함수 def findChromeWindow(): try: # xdotool 명령어 실행하여 Chrome 브라우저 창의 ID 가져오기 cmd = "xdotool search --onlyvisible --class Chrome" chromeWindowId = os.popen(cmd).read().strip() print('chromeWindowId', chromeWindowId) return chromeWindowId except Exception as e: print(f"오류 발생: {e}") retur..
2024.03.07 -
특정 폴더를 제외한 모든 폴더를 삭제하는 Python 코드 입니다. 아래 코드는 특정 폴더를 지정하고 그 폴더를 제외한 모든 폴더를 삭제하는 예제입니다. import os import shutil def delete_all_folders_except(folder_to_keep, base_folder): for root, dirs, files in os.walk(base_folder, topdown=False): for name in dirs: folder_path = os.path.join(root, name) if folder_path != folder_to_keep: # 특정 폴더를 제외하고 삭제 shutil.rmtree(folder_path) print(f"Deleted folder: {folder..
python 폴더안 특정 폴더만 빼고 삭제하는 코드특정 폴더를 제외한 모든 폴더를 삭제하는 Python 코드 입니다. 아래 코드는 특정 폴더를 지정하고 그 폴더를 제외한 모든 폴더를 삭제하는 예제입니다. import os import shutil def delete_all_folders_except(folder_to_keep, base_folder): for root, dirs, files in os.walk(base_folder, topdown=False): for name in dirs: folder_path = os.path.join(root, name) if folder_path != folder_to_keep: # 특정 폴더를 제외하고 삭제 shutil.rmtree(folder_path) print(f"Deleted folder: {folder..
2024.02.21 -
Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey' 위와 같은 에러가 나타난다면 아래의 명령어를 입력해보세요. SOLUTION sudo apt install libgtk2.0-dev pkg-config pip uninstall opencv-python-headless pip uninstall opencv-python pip install opencv-python
Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey'Rebuild the library with Windows, GTK+ 2.x or Cocoa support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script in function 'cvWaitKey' 위와 같은 에러가 나타난다면 아래의 명령어를 입력해보세요. SOLUTION sudo apt install libgtk2.0-dev pkg-config pip uninstall opencv-python-headless pip uninstall opencv-python pip install opencv-python
2024.01.18 -
Ubuntu에서 아나콘다 설치 후 environment create시 아래처럼 에러가 난다면 Collecting package metadata (current_repodata.json): failed NotWritableError: The current user does not have write permissions to a required path. path: /home/user/anaconda3/pkgs/cache/9e0f62c3.json uid: 1000 gid: 1000 If you feel that permissions on this path are set incorrectly, you can manually change them by executing $ sudo chown 1000:1000..
NotWritableError: The current user does not have write permissions to a required path.Ubuntu에서 아나콘다 설치 후 environment create시 아래처럼 에러가 난다면 Collecting package metadata (current_repodata.json): failed NotWritableError: The current user does not have write permissions to a required path. path: /home/user/anaconda3/pkgs/cache/9e0f62c3.json uid: 1000 gid: 1000 If you feel that permissions on this path are set incorrectly, you can manually change them by executing $ sudo chown 1000:1000..
2024.01.08