Programming 95

파이썬(Python) : OrderedDict와 Dict의 차이

Dict 사전형 자료구조 ==> {'name' : 'Charlotte', 'age' : 27, 'city' : 'Busan'} 여기에서 name, age, city을 키(keys), charlotte, 27, Busan을 값(values)라고 부른다. OrderedDict는 이름 그대로 순서대로 정렬된 사전이다. Dict와 다른 점은 - Dict : key를 Dict에 입력한 순서를 기억하지 않는다. - OrderedDict : key를 OrderedDict에 입력하면 순서를 기억한다. # 빈 dict생성 d = {} # 빈 Orderedict생성 from collections import OrderedDict od = OrderedDict() # dict의 값 넣는 법은 동일함 d["key"] = va..

Programming/python 2023.01.30

파이썬 string 문자를 ascii code 아스키 코드로 변환하는 방법 (feat. 프로그래머스 외계행성의 나이 구하기)

프로그래머스의 코딩테스트 입문 문제 중 하나로 외계행성의 나이를 푸는 문제이다. 나이를 입력하면 그 나이의 숫자가 영어 소문자 알파벳 순서에 매칭되는 알파벳을 출력해주는 문제이다. 나처럼 이미 알파벳 순서를 알고있는 사람들은 아래처럼 일일이 알파벳을 순서대로 나열하여, 그 인덱스를 통해 답을 구할 수 있다. def solution(age): english = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'w', 'x', 'y', 'z'] return ''.join([english[int(s)] for s in str(age)]) 하지만, 모든 알파벳을 외우지 못..

Programming/python 2023.01.24

How to reshape numpy array (ndarray) - 넘파이 어레이 크기 변경하는 방법 2가지

# 1 numpy.reshape(a, newshape, order='C') Parameters a : array_like (재변형할 array 변수를 넣어주기) newshpae : int or tuple of ints (재변형시킬 shape 크기를 정수형 또는 튜플형으로 입력) order : {‘C’, ‘F’, ‘A’}, optional ('C' : 가장 마지막 index의 축이 가장 먼저 변화함) - C언어 방식 ('F' : 가장 첫 index의 축이 가장 먼저 변화함) - Fortran언어 방식 ('A' : a의 정렬에 따라 자동으로 C또는 F로 읽거나/씀) - Auto Returns reshaped_array : ndarray (새로운 객체로 선언) # 2 ndarray.reshape(shape, ..

Programming/python 2023.01.02

(OpenCV, Matplotlib) 파이썬에서 이미지 시각화하는 방법, 띄우는 방법

#1 : opencv로 시각화하기 (RGB원본) * 주의 : opencv는 RGB이미지를 BGR채널로 가져오게된다. import cv2 # RGB 원본 이미지 로드 bgr = cv2.imread('image_path.jpg') # GRAY(흑백) 이미지 로드 gray = cv2.imread('image_path.jpg', cv2.IMREAD_GRAYSCALE) cv2.imshow('Image', image) cv2.waitKey(0) cv2.destroyAllWindows() #2 : matplotlib로 시각화하기 import cv2 import matplotlib.pyplot as plt image = cv2.imread('image_path.jpg') plt.axis("off") # x, y좌표 축..

이미지 회전 Image Rotation할 때, 이미지 잘리지 않게 하는 법 | imutils.rotate(), rotate_bound()

이미지를 회전시킬 때, (원형이미지가 아니라면) 이미지 모서리들이 잘리기 마련이다. --> imutils.rotate() 함수를 사용하면 그런데, 이를 방지하기 위한 함수가 --> imutils.rotate_bound()이다. 이 함수를 사용하면 이미지가 회전되면서 이미지가 잘리지 않게 외곽을 빈 값으로 채워준다.

파이썬 원하는대로 리스트 정렬하기 Python sort(), sorted()

파이썬에서 리스트 형태를 정렬할 수 있는 함수로 sort()와 sorted() 두가지가 있다. 먼저, sort()와 sorted()의 차이를 간단하게 말하면, sort()는 기존에 선언한 변수를 update해주는 기능+정렬이고, sorted()는 기존에 선언한 변수를 update하지 않고, 정렬된 결과만 보여주는 역할을 한다. 아래의 예시로 더 쉽게 이해해보자. 먼저 sort() - 문법은 list.sort()이며, 내부 파라미터는 key=None과 reverse = False가 default로 설정되어 있다. - reverse = True로 내림차순을 만들어준다. - key 메쏘드는 아래에서 다시 다루겠다. # 사용예시 list1 = [1, 10, -3, 4, -2, 2] list1.sort() lis..

Programming/python 2022.12.24

[프로그래머스] 파이썬 Python 점의 위치 구하기 | List Tuple Boolean Indexing

프로그래머스 Lv 0. 문제 내가 푼 코드 def solution(dot): x, y = dot[0], dot[1] if x > 0: if y > 0: answer = 1 else: answer = 4 else: if y > 0: answer = 2 else: answer = 3 return answer 다른사람의 풀이 def solution(dot): quad = [(3,2),(4,1)] #or quad = [[3,2], [4,1]] return quad[dot[0] > 0][dot[1] > 0] 처음보는 문법이다... 주피터로 이렇게 저렇게 돌려보니 리스트 내 리스트가 있는 경우, boolean으로 indexing할 수 있는 것 같다. (신기하면서 누가 이런걸 개발했을까,,,,싶다) boolean으로..

Programming/python 2022.12.24

Python Pandas Cheat Sheet | 판다스 완전 정복하기

Pandas 라이브러리로 이러한 데이터를 어떻게 조작할 수 있는지 그 모든 함수들을 모아보기로 하자. (차근히 업데이트 예정) 보편적으로 Pandas에서 취급하는 데이터 형태는 행과 열이 있는 표 형태인 Tabular Data이다. 이런 2차원(2-dimensional) 데이터를 pandas에서는 "데이터프레임(DataFrame)"이라고 부른다. 그 외에도 아래와 같은 데이터 형태도 존재한다. Series : 1차원 데이터; DataFrame에서 하나의 행 또는 열만 추출하는 경우 Panel : 3차원 데이터 Pandas 설치 pip install pandas 원하는 환경에 pip으로 pandas를 간단히 설치 후, (conda로도 가능함 - how to install pandas 라고 구글링하세요.) ..

Programming/python 2022.12.19

리눅스 tar 파일 압축하기 / 압축 해제하기 (Linux Command)

tar 커맨드에 뒤에 옵션을 붙여서 명령어를 입력하면 된다. 옵션 설명 -c 파일을 tar형태로 압축 -v 압축 또는 압축해제할 때의 과정을 화면에 출력 -f 압축할 파일 이름을 지정 -C 압축파일을 저장할 경로를 지정 -x tar 파일을 압축해제 -z gzip 형태로 압축하거나 해제함 * 예시 폴더를 tar로 압축하기 tar -cvf 파일명.tar 폴더명 tar 압축 풀기 tar -xvf 파일명.tar tar.gz 압축 풀기 tar -zxvf 파일명.tar.gz

Programming/linux 2022.12.19

파이토치 모델을 텐서보드에 시각화하기 : How to use Tensorboard with PyTorch (in Jupyter Lab)

우선, pytorch를 사용하는 환경과 동일한 위치에서 텐서보드를 설치해준다. # 필자는 pytorch를 구동하기 위해 따로 가상환경을 만들어서 해당 위치에 설치 conda activate virtual_environment # pip을 활용하여 tensorboard를 설치 pip install tensorboard (Ref Link : https://pytorch.org/tutorials/recipes/recipes/tensorboard_with_pytorch.html) How to use TensorBoard with PyTorch — PyTorch Tutorials 1.12.1+cu102 documentation Note Click here to download the full example cod..