String formatting의 방법 중 하나인 f-strings는 python 3.6부터 사용할 수 있는 기능입니다. 혹시 아직도 % 혹은 format을 사용하고 있으시면 f-strings로 바꿔보시는 걸 추천드립니다. 기본 사용법 >>> test_str = 'hello' >>> print(f'Test string is {test_str}') Test string is hello >>> print(f'{test_str=}') test_str='hello' # Print repr >>> print(f'{test_str}') 'hello' # Print Ascii >>> smile_face = '😀' >>> print(f'{smile_face}') '\U0001f600' >>> test_int = 123..
macbook m1 에서 mysqlclient 설치 시 발생하는 에러 해결방법입니다. 1. mysqlclient대신 pymysql 을 설치 pip install pymysql https://pypi.org/project/PyMySQL/ PyMySQL Pure Python MySQL Driver pypi.org 2. brew를 통해 mysql을 설치한 뒤 진행 brew install mysql # 파이썬 버전 확인 python --version or python3 --version # python 버전 3이상으로 진행하시면됩니다. python -m pip insatll mysqlclient or python3 -m pip install mysqlclient * brew 가 혹시나 안깔려 있으시다면 아래 링..

Poetry 기술을 사용하기 전에 우선 왜 사용하는 지 알고 넘어 가야 합니다. poetry는 의존성 관리 및 python 내 패키징을 위한 툴로 pip과 유사한 위치를 갖고 있습니다. pip의 경우 대부분 requirements.txt 파일을 만들어서 관리를 했으며 pipenv 의 경우 lock파일을 통해 관리를 하게 되는데 poetry의 경우 *.toml 로 관리를 합니다. poetry는 가상환경 여부를 확인해서 관리가 가능하기 때문에 virtualenv 등과 굳이 사용을 안해도 됩니다. pip 보다 편하게 의존성 관리를 해주는 패키지라고 생각하시면 됩니다. 설치 방법 # Install curl -sSL https://raw.githubusercontent.com/python-poetry/poetry..

문제 문자가 주어지면 그 중에서 반복하지 않는 첫번째 문자열 찾는 문제 풀이 1 s = 'aaabcccdeef' from collections import defaultdict # 빈도수 구하기 z = defauldict() for i in s: if z[i]: z[i] +=1 else: z[i] = 1 # Loop defaultdict to find the first for k, v in z.items(): if v ==1: return k 풀이 2 x = 'aaaabbbcddeef' for i in x: if x.find(i) == x.rfind(i): return i str.find() : 가장 작은 인덱스 반환 str.rfind() : 가장 큰 인덱스 반환 built-in function 을 사용..

VS code 로 작업을 하다 보면 파이썬에서 indent 등의 문제로 실행이 안될 경우가 많습니다. pylint, autopep8 등을 사용하여 reformat 을 바로 할 수 있지만, 가끔 ec2 에서 vim 으로 작업 후 실행 시 위와 같은 문제로 실행이 안되서 일일이 코드를 한줄씩 찾아가며 수정하는 일을 방지 하기위한 코드입니다. 코드 pip3 install autopep8 autopep8 --in-place --aggressive --aggressive 파이썬 스타일링을 위해 자주 사용되는 툴은 아래와 같습니다. pylint : style checking, error checking, refactoring suggestions, score autopep8 : Coding convention fl..

Shell script 를 파이썬에서 실행하는 방법입니다. aws ec2 에서 s3 bucket 으로 데이터를 전송하고 몇가지 설정을 바꿔주기 위해 쉘 스크립트를 작성하여 파이썬으로 실행하는 방법을 위한 예시입니다. test.sh aws s3 cp 동일한 vpc안에 있고, IAM 으로 권한 설정을 한 상태라면 ec2 에 있는 파일을 원하는 s3 bucket으로 copy 할 수 있습니다. (이동하려면 mv) 변수로 받고 싶으시다면 $1, $2 형식으로 넣으시면 됩니다. aws s3 cp $1 $2 test.py import subprocess import shlex file_path = 'file_path_example' s3_uri = 's3_uri' subprocess.call(shlex.split(f..

파이썬 3.8 이후 새로운 기능 설명입니다. 더 자세한 사항은 공식 문서 참고해주세요. [link] Walrus Operator := 이게 바다코끼리처럼 보인다고 해서 지어진 이름이긴한데, 크게 와닿지는 않습니다. # Walrus operator req = {'form': {'username': 'j', 'password': ''}} def walrus_example(req): if len(password := req['form'].get('password')) > 5: return 'Good Password' else: return 'Too short' def without_walrus_example(req): password = req['form'].get('password') if len(passw..

Python dictionary는 Key - value 포맷으로 데이터를 저장합니다. Java에서는 hashmap / hashtable 과 유사합니다. Create dictionary d = { 'test2':222, 'test1':111, 'test6':666, 'test5':555, 'test3':333, 'test4':444 } d2 = dict([ ('test2',222), ('test1',111), ('test6',666), ('test5',555), ('test3',333), ('test4',444) ]) >>> print(f'd is {type(d)}') >>> print(f'd2 is {type(d2)}') # Print d is d2 is Accessing data >>> d['test2..

csv 파일이란.. csv는 comma-separated values 의 줄임말로 , 쉼표로 데이터를 구분하는 파일입니다. 유사하게 tsv 파일의 경우 tab으로 데이터를 구분하는 파일입니다. Using csv [link] w = write r = read Type 1 with 를 사용하지 않고 한줄씩 저장하는 방법입니다. open을 통해 test.csv란 파일을 w (write) 할 예정이며 utf-8로 인코딩을 할 것이다 라고 정한 뒤 csv.writer를 통해 한줄씩 입력한 뒤 close() 를 꼭 해주셔야 합니다.(중요) import csv f = open('test.csv', 'w', encoding='utf-8', newline='') wr = csv.writer(f) wr.writerow([..
- Total
- Today
- Yesterday
- 나는리뷰어다
- docker
- Kubernetes
- Algorithm
- kubens
- Shell
- book
- csv
- Python
- kubernetes context
- go
- Container
- 책리뷰
- Git
- lllm
- 키보드
- AWS
- Binary
- 파이썬
- Fine-Tuning
- feed-forward
- 한빛미디어
- BASIC
- leetcode
- LLM
- error
- collator
- palindrome
- K8S
- Gemma
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |