Programming
-
[TIL] 파이썬 기본, string 함수Programming/Python 2024. 4. 5. 22:09
파이썬은 인터프리터 언어 인터프리터 언어란 기계어 번역 없이 소스코드를 실행시점에 해석해서 컴퓨터가 처리하게 하는 것이다. 실행속도가 느리지만 간단하다. 객체 지향적 언어 실행 순서가 아니라 단위 모듈 중심의 프로그램 작성 동적 타이핑 언어 프로그램이 실행되는 시점에 데이터 타입을 결정함 외우면 좋을 string 함수 a.capitalize() # 첫문자를 대문자로 변환 a.find('abc') # 문자열에 'abc'가 들어간 위치 반환 a.rfind('abc') # 문자열에 'abc'가 들어간 위치 반환, rfind는 오른쪽부터 a.startswith('abc') # 'abc'로 시작하는 문자열여부 반환 a.endswith('abc') # 'abc'로 끝나는 문자열여부 반환 a.strip() # 좌우 ..
-
[Airflow] 설치, 초기 세팅Programming/Network & cloud 2024. 2. 29. 19:44
변성윤님의 Airflow 강의를 실습하면서 나를 위해 다시 정리해보았다. 데이터 관리나 모델 서빙에서 자주 쓰이는 도구이니 사용법을 잘 알아놔야겠다. Airflow란? Airbnb에서 개발 스케줄링 및 워크플로우 도구 데이터 처리 파이프라인을 효율적으로 관리 web UI 제공 Airflow 설치하기 directory 만들고 이동 후, 1. 가상환경 설정 python -m venv.venv source .venv/bin/activate 2. 설치 pip3 install pip --upgrade AIRFLOW_VERSION=2.6.3 PYTHON_VERSION="$(python --version | cut -d" " -f2 | cut -d"." -f1-2)" CONSTRAINT_URL="https://raw..
-
Software 1.0 vs Software 2.0Programming/Computer Science 2024. 1. 22. 18:42
Software 1.0과 Software 2.0 소프트웨어 개발 및 딥러닝 분야에서 사용되는 용어 전통적인 소프트웨어 개발 방법과 딥러닝을 비교하여 설명하는 데 사용 Software 1.0 전통적인 소프트웨어 개발 방법 Top-down 방식 장점 : 명시적이고 직관적임 단점 : 복잡하고 다양한 규칙 처리하기에 어려움 SW 1.0 개발과정 문제정의 큰 문제를 작은 문제의 집합으로 분해 개별 문제 별로 알고리즘 설계 솔루션들을 합쳐 하나의 시스템으로 이미지 인식 기술도 처음에는 SW 1.0식으로 개발되었음. 전신이 보이는 경우, 팔이 보이는 경우, 얼굴이 보는 경우, ..... 이런식으로 케이스별로 분해. 예) DPM 그러나 한계가 있었고 이에 대한 해결책으로 Software 2.0이 등장함. SW 2.0에..
-
내가 보려고 정리한 서버 구축 방법(윈도우에서 리눅스 접근)Programming/Ubuntu 2024. 1. 3. 23:58
1. 서버를 생성한다. 이때 나오는 주소값과 비밀번호를 저장해놓는다. 2. OpenVPN을 사용해서 연결한다. 3. 연결이 확인되면, cmd에서 pem파일이 있는 경로로 이동후, ssh 명령어를 입력해서 접속한다. (에러 발생시) permission denied라는 에러가 발생한다면 https://ongamedev.tistory.com/494 Windows에서의 ssh 인증 파일 permission 문제 해결 방법 해당 파일 "속성"에서 "보안"탭을 선택 후 "고급"버튼을 선택합니다. 그리고 "상속 사용 안 함"을 선택 후 "이 개체에서 상속된 사용 권한을 모두 제거합니다."를 선택합니다. 기존 사용자 리스트 ongamedev.tistory.com 이 내용을 참고하여 pem파일의 보안 속성을 설정해준다...
-
티스토리에 수식 추가하는 방법(간단버전)Programming/Etc. 2023. 11. 29. 00:37
https://atomurl.net/math/ TeX equation editor (Mathematical Formulas) Online equation editor for writing math equations, expressions, mathematical characters, and operations. You can also generate an image of a mathematical formula using the TeX language. This is useful for displaying complex formulas on your web page. atomurl.net 이 사이트에서 수식 입력하고 이미지를 복사해서 붙여넣기 한다. 이 패널에서 Image로 선택하고 Height로 사이즈..
-
[디버깅]Jupyter notebook 실행 했는데 no module 에러 뜨는 상황 해결Programming/Debug 2023. 11. 7. 19:06
문제 상황 cmder 또는 anaconda prompt 창에서 conda create -n ml python=3.8 activate ml conda install pandas jupyter notebook 이렇게 가상환경을 만들고 pandas 모듈을 설치 한 후 주피터 노트북을 실행하고 import pandas를 했는데 강의와는 다르게 나는 no module 에러가 발생했다. 문제 확인 import sys sys.executable 주피터 노트북 쉘에 위 코드를 입력해서 실행중인 경로를 확인한다. 프롬프트 창에 conda info --envs를 입력해서 가상환경 경로와 비교해준다. 그 결과 두 경로가 일치하지 않음을 확인했다. 해결 방법 프롬프트 창에 conda install jupyter 로 설치해준다..
-
[Python] File / Exception / LogProgramming/Python 2023. 8. 29. 21:56
프로그램을 사용할 때, 예상치 못한 일들이 많이 생긴다. Exception 1) 예상 가능한 예외 : 입력이 들어가지 않았다던지.. 2) 예상 불가능한 예외 : 개발자의 실수, 리스트 인덱스 에러, divide 0 에러 등 프로그램도 제품이기 때문에 잘못된 상황에 대한 대처가 필요함! try: #예외 발생 가능 코드 except : #예외 발생시 처리 코드 try: #예외 발생 가능 코드 except ZeroDivisionError: #예외 발생시 처리 코드 except IndexError as e: print(e) except Exception as e: print(e) try: #code except ZeroDivisionError: #code else: #code ###### try: #code e..
-
오쪼쪼 나에 작은 첫 도커...Programming/Network & cloud 2023. 8. 16. 16:16
NeRFstudio를 위해 Docker를 첫 사용했다! Window에서 Docker Desktop을 다운받아서 사용했는데 튜토리얼도 잘 되어있어서 생각보다 어렵지 않았다. 그리고 튜토리얼을 깨니 아래처럼 축하메세지가 나와서 뭔가 기분 좋았다 ㅎ [API 리뷰] NeRF Studio : NeRF 통합 Framework (tistory.com) [API 리뷰] NeRF Studio : NeRF 통합 Framework NeRF를 쉽고 편리하게 구현 할 수 있는 API이자 Framework인 nerfstudio 에 대해 소개합니다. nerfstudio에서는 NeRF모델을 구현하는데 필요한 Data Preprocess, Data Loader, Model Training, Visualizing, Rendering을..
-
[Python] String, Function, Scoping rule, 함수 작성 가이드라인Programming/Python 2023. 8. 15. 22:48
(포인터 관련) Call by Value 값만 넘김 Call by Reference 메모리 주소를 넘김 파이썬 함수 호출 방식 Call by Object Reference 호출자와..변수.. swap 할 때 리스트의 경우 listA[0], listA[1] 이 값을 넣어주면 값이 바뀌지 않음 주의. 💥주의!! list_a = list_b 두 리스트 같아짐 list_a = list_b[:] 리스트 복사 Scoping Rule 지역변수 전역변수 함수 내에 전역변수와 같은 이름의 변수를 선언하면 새로운 변수가 생김(전역변수와 같지 않음) 같아지고 싶으면 global 사용. Recursive Function : 재귀함수 자기자신을 호출 ex) factorial Function type hints def type_..
-
[프로그래머스] lv1 달리기경주Programming/코딩공부 2023. 8. 11. 22:33
레벨1이지만 정답률 40%...문제 맨 처음에 rank = [] 를 만들어서 call마다 rank 값을 조정하는 코드를 짰는데 시간초과가 났다. 그 다음 리스트의 원소끼리 swap하도록 간결하게 수정했다. 채점에서 5개 테스트 시간복잡도에 걸렸다... list swap def solution(players, callings): answer = [] for call in callings: called_index = players.index(call) players[called_index-1], players[called_index] = players[called_index], players[called_index-1] return players 제한사항의 배열 길이가 최대 50000이기 때문에 인덱스로 서..