* 전체 코드 ## 삼항연산자 기본 a=10 print("a is big" if a > 5 else "a is small") # 출력: a is big ## 중첩 삼항연산자 a = 3 print("a is big" if a > 5 else "삼위일체" if a==3 else "a is small") # 출력: 삼위일체 ## 함수와 함께 삼항연산자 def test(p): print(f"a is {p}") a=10 test("king") if a > 5 else test("god") # 출력: a is king Contents 1. 배경 python에는 if else 조건문을 한 줄로 쓸 수 있는 삼항 연산자가 있습니다. 아래와 같은 간단한 문법으로 사용합니다. [참일 때] if [조건문] else [거짓일..
Contents 1. 배경 파이썬으로 코드를 짜다보면, 코드가 엄청 오래 걸린다고 느낄 때가 있습니다. 그럴 때 함수 별로, 혹은 코드별로 걸리는 시간을 측정해 병목현상을 해결할 수 있습니다. python 라이브러리를 이용해 코드의 시간을 측정하는 방법과 주피터 노트북을 이용하는 경우 매직 커맨드를 이용해 코드의 시간을 측정하는 방법을 알아보겠습니다. 2. 코드 실행시간 측정 1) time 라이브러리 이용 (초 단위) import time # time 라이브러리 import start = time.time() # 시작 time.sleep(1) # 측정하고자 하는 코드 부분 print(f"{time.time()-start:.4f} sec") # 종료와 함께 수행시간 출력 python에서 기본적으로 시간을 ..
Contents 1. 배경 Amazon의 EC2나 Azure 등 클라우드 서버를 사용하는 경우, 무료 티어에선 용량이 30기가 정도로 매우 적게 할당되는 경우가 있습니다. 웹을 띄우거나, 뭔가 실험적으로 하기엔 매우 적은 용량입니다. docker를 사용하는 경우 이미지나 컨테이너, 컨테이너와 연결된 로컬의 용량 등을 한눈에 파악한다면, docker에서 사용 중인 용량을 한 번에 볼 수 있습니다. 그 방법을 알아보겠습니다. 2. docker 디스크 사용 상태 확인 1) docker system df docker system df 아래 출력이 나와 있습니다. TYPE에는 docker 시스템에서 사용하는 이미지, 컨테이너, 컨테이너와 연결된 로컬의 용량(Local Volumes)등의 종류가 나옵니다. 각 컬럼..
Contents 1. 배경 주피터 노트북을 사용하다 보면, 특히 머신러닝/딥러닝을 하다 보면 크기가 매우 큰 데이터를 다루게 됩니다. 이때, 여러 노트북을 켜놓아서 여러 노트북들이 메모리를 총 얼마 정도 쓰고 있는지, 그리고 개별 노트북은 메모리를 얼마 정도 쓰고 있는지 알고 싶을 때가 있습니다. 그 방법을 알아보겠습니다. 2. 전체 노트북 메모리 1) 설치 # pip를 이용한 설치 pip install jupyter-resource-usage # 주피터 노트북에서 설치하는 경우 pip !pip install jupyter-resource-usage # conda를 이용한 설치 conda install -c conda-forge jupyter-resource-usage 주피터 노트북에서 설치하는 경우는 ..
Contents 1. 배경 저는 2020년 2월 3일에 중소기업에 입사했습니다. 대학 졸업 후 첫 입사였습니다. 경영지원팀에선 첫 3개월은 수습기간이니, 그 이후에 청년내일채움 공제를 시작하겠다고 했습니다. 처음 계약부터 만기 수령까지 과정들을 알아보겠습니다. 2. 타임라인 2020-05-27 : 계약 성립 2022-05-25 : 마지막 납부(24회 차) 2022-05-26 : 만기일자 2022-06-20 : 마지막 기업 기여금 95만 원 적립 (5회 차) 2022-06-21 : 마지막 취업지원금 225만 원 적립 (5회 차) 2022-06-23 : 만기 신청 접수 2022-07-01 13:01 : 만기 수령 1600만 원 + 이자 119,123 원 입금 3. 수령 과정 납부는 통장에 돈이 있으면, 매월..
Contents 1. 배경 Docker에서 실행 중인 컨테이너를 아예 중지시키는 것 말고, 잠깐 멈추는 것을 할 수 있습니다. Docker에서 실행 중인 작업을 잠깐 멈췄다가, 다시 재개하고 싶은 경우 사용합니다. 아래에서 자세히 알아보겠습니다. 2. 사용법 docker pause [콘테이너] # [콘테이너]의 실행을 멈춤 docker unpause [콘테이너] # [콘테이너]의 실행을 재개 위와 같은 명령을 통해 컨테이너의 실행을 잠깐 멈췄다가, 다시 재개시킬 수 있습니다. [컨테이너] 부분에는 컨테이너의 ID나 컨테이너 이름을 작성해주시면 됩니다. 3. docker stop과 차이점 docker stop은 해당 컨테이너에서 실행되는 모든 프로세스를 KILL 하는 반면, docker pause는 컨테이..
Contents 1. 배경 파이썬에서 텍스트 파일을 읽고, 쓰는 것만으로 충분치 않을 때가 있습니다. 파이썬에서 pickle을 이용하면, 변수를 그대로 저장했다가 불러올 수 있습니다. 예를 들어, python 자체 자료형인 리스트, 딕셔너리 등뿐만 아니라, pandas의 데이터 프레임, 심지어 함수와 클래스까지 파일로 저장하고 불러올 수 있습니다. 그 방법을 알아보겠습니다. 2. 기초 사용법 # python 변수(객체)를 pickle 파일로 저장 with open([파일], 'wb') as f: pickle.dump([변수], f) # pickle 파일 불러오기 with open([파일], 'rb') as f: var = pickle.load(f) pickle.dump를 이용해 [변수]를 [파일]에 저장..
Contents 1. 배경 docker 컨테이너에 접속한 뒤, exit이나 Ctrl+D를 누르면 컨테이너가 종료되며 꺼집니다. 이런 경우, 컨테이너에 다시 들어가서 작업을 이어가기가 어렵습니다. 이런 문제를 해결하기 위해, 단축키를 이용해 컨테이너 종료 없이 나가는 것(Detach)이 가능합니다. 2. 컨테이너 종료 없이 나가기 Ctrl + P + Q 컨트롤을 누른 상태에서 P와 Q를 동시에 누르면, 컨테이너 종료 없이 밖으로 나갈 수 있습니다. 이 단축키는 윈도우나 Mac, 리눅스에서 모두 동일하게 작동합니다. 3. 실습 docker run을 이용해, 리눅스 우분투(ubuntu) 컨테이너를 생성하며, 컨테이너에 들어간 뒤, 컨테이너 내부에서 Ctrl + P + Q를 눌러 나와보겠습니다. docker r..
Contents 1. docker run 명령어 docker run은 docker의 이미지를 기반으로, 컨테이너를 생성하는 명령어입니다. 옵션에 따라 컨테이너를 바로 실행시킬 수도 있습니다. 기본적인 명령어 형식은 아래와 같습니다. docker run [옵션] [이미지] [명령어] [인자] # 예시 docker run --rm ubuntu ls -l 예시를 보면 docker run 뒤에 --rm이 [옵션]이고 ubuntu가 리눅스 우분투 [이미지] 이름이며, ls가 [명령어]이고 -l이 [인자]입니다. 간단히 설명드리면, 리눅스 우분투 컨테이너를 생성하고, 거기서 ls -l 명령어 결과를 출력하라는 의미입니다. --rm 옵션은 컨테이너 실행 완료와 함께 컨테이너를 삭제하는 옵션입니다. (아래에서 자세히 ..
Contents 1. 배경 M1 Macbook에서 크롬 창을 이것저것 많이 켜서 사용하다 갑자기 그냥 크롬이 꺼져버리는 일이 발생했습니다. 다시 키면, 비정상 종료되었다고 탭을 복구하라는 메시지가 떴습니다. 그런데, 이런 일이 반복적으로 발생했고, 해결책을 찾아 공유드립니다. (또한, 동영상을 스크린샷 찍는 경우 검은 화면으로 찍히는 경우도 있는데, 이 문제 역시 같이 해결되었습니다.) 2. 해결 방법 1) Chrome - 설정 Chrome 에서 ...을 누르고, 설정을 누릅니다. (단축키 Cmd ,) 2) 하드웨어 가속 비활성 고급 -> 시스템 -> 가능한 경우 하드웨어 가속 사용을 아래 사진처럼 활성(Active) -> 비활성(Inactive)으로 바꿔줍니다. 3. 결론 저는 이렇게 하니, M1 Ma..
* 전체 코드 ### 2,8,16 진수 k=15 print(f"k 2진수: {k:b}, k 8진수: {k:o}") # 출력: k 2진수: 1111, k 8진수: 17 print(f"k 16진수 - 소문자:{k:x}, 대문자:{k:X}") # 출력: k 16진수 - 소문자:f, 대문자:F ### 1000 단위 쉼표(,) m=1000000000 print(f"m: {m:,} 원") # 출력: m: 1,000,000,000 원 ### 출력 길이 조절 print(f"a:{a:10}") # 출력: k: 15. ### 왼쪽, 오른쪽, 가운데 정렬 print(f"a center: {a:^10}.") # 출력: k center: 15 . print(f"a left: {a:10}.") # 출력: k right: 15. ..
* 전체 코드 ## 기초 예시 a=10 print(f"a: {a}") # Output: 10 print(f"a: {a:.2f}") # Output: 10.00 ## 자주 사용하는 포맷팅 ### 소수점 자리수 import math pi=math.pi print(pi) # Output: 3.141592653589793 print(f"파이: {pi:.3f}") # Output: 파이: 3.142 ### 퍼센트(백분율) percent=0.9522 print(f"퍼센트: {percent:.2%}") # Output: 퍼센트: 95.22% ### 부동 소수점 출력 li = [0.0, 0.5, 1.0] for i in li: print(i) # Output: 0.0 0.5 1.0 for i in li: print(f..