본문 바로가기
728x90

전체 글408

[코랩] matplotlib에서 한글 폰트 사용방법 # 캐시 삭제 후 Colab 세션 재시작!rm -rf ~/.cache/matplotlib # Linux(Ubuntu) 기반 환경에서 fonts-nanum 패키지를 설치하는 명령어!apt-get -qq install fonts-nanumimport osimport matplotlib.pyplot as pltfrom matplotlib import font_managerimport matplotlib.font_manager as fm# ttf 파일이 저장되어 있는 경로 fe = fm.FontEntry(fname=r'/usr/share/fonts/truetype/nanum/NanumGothic.ttf',name='NanumGothic')                        # 원하는 폰트 설정 fm.fo.. 2024. 9. 8.
[Python] @wraps 설명 @wraps는 Python에서 표준 라이브러리의 functools 모듈에 포함된 데코레이터입니다. 주로 데코레이터를 만들 때 사용되며, 원본 함수의 메타데이터(예: 함수명, 문서화 문자열 등)를 데코레이터로 감싸진 함수에 복사하는 역할을 합니다.@wraps의 사용 이유데코레이터를 사용할 때, 원래 함수의 이름이나 문서 문자열(__name__, __doc__ 등)이 덮어씌워지는 문제가 발생할 수 있습니다. 이를 방지하고, 원래 함수의 메타데이터를 유지하기 위해 @wraps를 사용합니다.예시: @wraps 사용from functools import wraps def my_decorator(func):     @wraps(func)     def wrapper(*args, **kwargs):         p.. 2024. 9. 2.
QA 면접질문 대비 리스트 기술적 스킬일반적인 테스트 지식소프트웨어 테스트의 종류에 대해 설명해 주세요.소프트웨어 테스트에는 기능 테스트, 비기능 테스트, 회귀 테스트, 성능 테스트 등이 있습니다. 기능 테스트는 소프트웨어가 요구사항을 제대로 충족하는지 확인하는 것이고, 비기능 테스트는 성능, 보안, 사용자 경험 등 비기능적인 요구사항을 확인합니다. 회귀 테스트는 기존 기능이 새로운 코드 변경 후에도 제대로 동작하는지 확인하는 것이며, 성능 테스트는 시스템의 반응 시간, 처리량, 안정성을 평가합니다.버그의 심각도와 우선순위를 어떻게 결정하나요?버그의 심각도는 사용자에게 미치는 영향에 따라 결정됩니다. 예를 들어, 시스템 충돌이나 데이터 손실을 초래하는 버그는 높은 심각도로 간주됩니다. 우선순위는 비즈니스 요구사항과 일정에 따라 결.. 2024. 8. 7.
[VSCODE] 유용한 단축키 1. Shift + 방향키2. Ctrl + 방향키3. Shift + Ctrl + 방향4. Home(맨 앞코드로 이동), End(끝으로 이동), Function + 방향키5. 스크롤 - Page Up, down 또는 Function + 방향키6. ctrl + End, Home - 파일의 가장 처음, 끝7. 임의의 단어에서 ctrl + enter하면 바로 다음줄로 넘어감8. 임의의 단어에서 바로 윗줄 삽입 - Shift + ctrl + enter9. 임의의 줄들을 드래그하고, alt + 방향키(위,아래) 하면 바로바로 내려감10. Shift + alt + 방향키(위,아래) - 드래그한 내용을 방향키 방향으로 복사11. shift + ctrl + k - 현재 줄 지우기 2024. 7. 30.
[AWS] EC2 저장소 늘리기 일단 AWS 홈페이지에서 본인의 인스턴스로 들어갑니다.1. 인스턴스 들어간 후, 하단에 Storage 를 눌러서 본인의 Volume ID를 클릭2. Volume ID 또 클릭3. Modify 클릭4. 원하는 볼륨으로 수정하기 완료 했다면, ec2에 접속해 아래 절차를 따라갑니다. Amazon Linux 2에서 볼륨을 확장한 후, 파일 시스템을 새로 확장된 크기로 늘려야 합니다. 아래의 절차를 따라 진행하면 됩니다.블록 디바이스 확인: 먼저 lsblk 명령을 통해 볼륨이 16GB로 확장되었는지 확인합니다.출력 결과는 이미 주어진 것처럼 16GB로 확장된 것을 확인할 수 있습니다.-   lsblk파일 시스템 확장: xvda1 파티션에 대해 파일 시스템을 확장합니다. 일반적으로 Amazon Linux 2는 x.. 2024. 7. 27.
[DevOps] DevOps란? DevOps 개요 DevOps는 개발(Development)과 운영(Operations)의 합성어로, 소프트웨어 개발과 IT 운영 팀 간의 협업을 강조하는 문화, 철학, 방법론을 의미합니다. DevOps는 소프트웨어의 빠르고 안정적인 배포를 목표로 하며, 지속적 통합(CI), 지속적 전달(CD), 자동화, 모니터링 및 피드백 루프 등의 관행을 포함합니다.주요 구성 요소문화(Culture): 협업과 커뮤니케이션을 강조하여 개발자와 운영자가 동일한 목표를 향해 일하도록 합니다.자동화(Automation): 반복적인 작업을 자동화하여 효율성을 높이고, 사람의 개입으로 인한 오류를 최소화합니다.지속적 통합(CI, Continuous Integration): 개발자가 코드 변경 사항을 자주 병합하고, 각 병합 시.. 2024. 7. 20.
[AWS] VPC, NAT 게이트웨이 VPC(Virtual Private Cloud)는 AWS에서 제공하는 가상 네트워크 서비스로, 사용자가 AWS 리소스를 정의한 가상 네트워크에서 실행할 수 있게 해줍니다. VPC를 사용하면 AWS 인프라 내에서 격리되고 안전한 네트워크 환경을 구성할 수 있습니다. VPC의 주요 특징과 구성 요소에 대해 설명드리겠습니다.주요 특징네트워크 격리: VPC를 통해 AWS 리소스를 격리된 네트워크 환경에서 실행할 수 있으며, 공용 및 사설 서브넷을 사용할 수 있습니다.IP 주소 범위 설정: 사용자 지정 IP 주소 범위를 설정할 수 있으며, 이 범위 내에서 IP 주소를 할당할 수 있습니다.네트워크 구성: 서브넷, 라우팅 테이블, 인터넷 게이트웨이, NAT 게이트웨이, 보안 그룹 및 네트워크 ACL을 사용하여 네트워.. 2024. 7. 13.
[FastAPI] AI 학습 모델 배포하기에 최적화된 서버 FASTAPI는 테스트시에, rest api를 웹에서 테스트가 가능하다. 편리함!! 2024. 7. 5.
[Python] @classmethod vs getter, setter 사용 Python에서 @classmethod 데코레이터를 사용하는 이유와 일반적인 getter와 setter 메소드를 사용하는 것의 차이를 알아보겠습니다.@classmethod@classmethod 데코레이터는 메소드가 클래스의 인스턴스가 아닌 클래스 자체에 속하도록 지정합니다. 이 메소드는 클래스의 인스턴스를 생성하지 않고도 호출할 수 있으며, 첫 번째 파라미터로 클래스 객체인 cls를 자동으로 받습니다. 이는 클래스 변수를 수정하거나 클래스 수준에서 데이터를 처리할 때 유용합니다.예를 들어, 코드에서 get_flag와 increment_flag 메소드는 __flag라는 클래스 변수에 접근하고 수정합니다. 이 메소드들은 클래스 레벨에서 작동하기 때문에 인스턴스의 상태와 독립적으로 동작합니다.class MyC.. 2024. 7. 4.
728x90