일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- Docker
- error
- paramiko
- 컨테이너
- OpenCV
- JSON
- 핑거스타일
- Numpy
- pandas
- YOLO
- windows forms
- C
- C++
- Selenium
- 기타 연주
- pip
- mysql
- VS Code
- Linux
- 프로그래머스
- nvidia-smi
- C#
- SSH
- 오류
- Python
- Visual Studio
- 채보
- ubuntu
- label
- pytorch
- Today
- Total
목록Python (117)
기계는 거짓말하지 않는다
pytube로 youtube 영상을 다운로드하는 예제 코드이다. 다운로드 시 프로그레스바가 출력된다. from pytube import YouTube import sys def progress_function(chunk, file_handle, bytes_remaining): global filesize current = ((filesize - bytes_remaining)/filesize) percent = ('{0:.1f}').format(current*100) progress = int(50*current) status = '█' * progress + '-' * (50 - progress) sys.stdout.write(' ↳ |{bar}| {percent}%\r'.format(bar=status..
Python에서 stdout이 JSON 형식의 문자열이거나 문자열 내부에 JSON 문자열이 포함되어 있을 경우 파싱 하는 함수이다. 여러 케이스에 대하여 검증되지는 않았다. import json def extract_json_strings(input_string): json_strings = [] start_brace_index = -1 end_brace_index = -1 open_brace_count = 0 close_brace_count = 0 for i, char_ in enumerate(input_string): if char_ == '{': open_brace_count += 1 if open_brace_count == 1: start_brace_index = i if char_ == '}' ..
Python에서 """로 선언된 여러 줄 문자열의 각 라인 최소 indent 만큼 제거하고 출력하는 방법이다. 각 라인의 맨 앞 indent 중 최소를 찾아 앞으로 붙여 정렬한다. def adjust_indent(text: str) -> str: lines = text.split('\n') # 각 라인에서 공백 제외 부분의 길이를 찾아 최소 길이 계산 min_indent = min(len(line) - len(line.lstrip()) for line in lines if line.strip()) # 각 라인을 최소 indent만큼 제거하고 출력 adjusted_lines = [line[min_indent:] if line.strip() else line for line in lines] return '..
람다 함수를 사용하여 콜백 함수를 정의하고 매개변수를 할당할 수 있다. 람다 함수는 간단한 함수를 한 줄로 정의할 때 유용하게 사용된다. def temp_function(A, B, C, D): print(A, B, C, D) # 매개변수 A, C 미리 할당 후 B, D를 이후에 할당하도록 temp_function_with_param = lambda _B, _D: temp_function("A", _B, "C", _D)\ # 나머지 매개변수 B, D 할당 temp_function_with_param("PARAM B", "PARAM D")
파이썬에서 언더스코어 (_)로 시작하는 변수명과 일반적인 변수명의 차이는 주로 관례(convention)와 의미상 구분이다. 또한 다른 스크립트 파일에서 참조시에 언더스코어 변수명은 차이가 있다. 언더스코어로 시작하는 변수명 (_value) 관례적으로 언더스코어(_)로 시작하는 변수는 보통 '내부적으로 사용되지만 무시될 수 있다'라는 의미이다. 예를 들어, _value와 같이 언더스코어로 시작하는 변수는 일반적으로 사용자가 주의를 기울이지 않아도 되는 임시 변수, 또는 내부 구현에서 사용되는 변수일 수 있다. 다른 스크립트 파일에서 참조 시 참조되지 않는다. # 언더 스코어로 시작하는 변수 (내부적으로 사용되는 변수 또는 임시 변수) # 다른 스크립트 파일에서 참조할 수 없다 _value = 10 # 언..
Python에서 pymysql connection 연결 후 프로세스가 오래 실행되고 있을 경우, DB 쿼리 실행 시, lost connection 오류를 보는 경우가 있다. pymysql에서 연결이 끊어졌을 경우 재연결을 시도하는 방법이다. import pymysql # 연결 설정 connection = pymysql.connect( host='your_mysql_host', user='your_mysql_user', password='your_mysql_password', database='your_mysql_database', ) def insert_db(query: str): # DB 쿼리 작업 전 확인하고 재연결을 시도해야한다. # 연결 확인 및 재연결 시도 connection.ping(recon..
awscli를 사용 시, 이와 같은 오류를 볼 때 해결 방법이다. # 필수는 아님 python3 -m pip install --upgrade pip # 필수 pip3 install --upgrade boto3 pip3 install --upgrade awscli