본문 바로가기

PYTHON

(155)
파이썬과 데이터 사이언스 : NumPy 라이브러리 numpy는 다차원 배열의 연산 및 수치 연산을 위한 다양한 기능을 제공합니다. 아래는 numpy의 array() 함수를 이용해 numpy 배열(ndarray : n-dimension array)을 생성하는 코드입니다. import numpy as np data = np.array([1, 2, 3, 4, 5]) print(data) print(type(data)) print(data.dtype) print(data.shape) 다음은 파이썬의 기본 자료 구조인 list와 ndarray의 처리 시간 비교 코드입니다. 각 요소에 2를 더하는 처리 시간은 사용 PC에 따라 차이가 날 것입니다. import numpy as np import time data1 = [x for x in range(100000)]..
파이썬 튜토리얼 046. glob 라이브러리의 glob() 함수로 원하는 이름의 디렉토리 및 파일 리스트 얻기 파이썬 표준 라이브러리 glob의 glob() 함수를 사용해 원하는 이름의 디렉토리 및 파일 리스트를 얻을 수 있다. glob() 함수의 파라미터 정의는 다음과 같고, 아래의 예제들은 위의 이미지에서 보여지는 디렉토리 및 파일을 기준으로 한다. glob.glob(pathname, *, recursive=False) import os import glob print(os.getcwd()) os.chdir('folder1') #1 for ret in glob.glob('*.txt'): print(ret) #2 for ret in glob.glob('1*'): print(ret) #3 for ret in glob.glob('*1*'): print(ret) #1 부문에서 glob() 함수는 디렉토리 또는 파일 ..
opencv-python 005. 카메라, 비디오 영상을 화면에 출력 카메라 영상을 화면에 출력하기 import cv2 as cv cap = cv.VideoCapture(0) print(type(cap)) print(cap.isOpened()) print(cap.get(cv.CAP_PROP_FRAME_WIDTH)) print(cap.get(cv.CAP_PROP_FRAME_HEIGHT)) # cap.set(cv.CAP_PROP_FRAME_WIDTH, 640) # cap.set(cv.CAP_PROP_FRAME_HEIGHT, 480) while True: ret, frame = cap.read() if not ret: break # frame = cv.flip(frame, 0) # -1, 0, 1 # frame = cv.cvtColor(frame, cv.COLOR_BGR2GRA..
opencv-python 004. imshow()로 다중 이미지 다중 화면에 출력 (matplotlib 포함) opencv-python 패키지의 imshow() 함수를 이용해 이미지를 하나 이상의 화면(윈도우)에 출력해 본다. 아래의 예제 코드 실행을 위해 관련된 이미지가 다음의 경로에 존재함을 전제로 한다. 예제 코드 1 # python 3.9.6 # opencv-python 4.5.3.56 import cv2 as cv img1 = cv.imread('image/view1.jpg', flags=cv.IMREAD_UNCHANGED) img2 = cv.imread('image/view1.jpg', flags=cv.IMREAD_GRAYSCALE) img3 = cv.imread('image/view2.jpg', flags=cv.IMREAD_UNCHANGED) img4 = cv.imread('image/view2.jp..
파이썬 튜토리얼 045. shutil 라이브러리의 copy 함수로 파일 복사 파이썬 표준 라이브러리 shutil의 copy() 함수를 이용해 임의 파일을 복사할 수 있다. shutil의 copy() 함수는 shutil의 copyfile() 함수와 그 사용 방법이 유사하나 파일이 복사될 디렉토리 만을 지정해도 파일 복사가 가능한 차이점이 있다. import shutil ret = shutil.copy('main.py', 'main_copy.py') print(ret) 을 실행하면 main.py 파일이 저정되어 있는 디렉토리(폴더)에 main_copy.py 파일이 생성된다. shutil.copy() 함수는 shutil.copyfile() 함수와 동일하게 복사된 파일 정보를 반환한다. 아래는 print(ret) 실행의 결과이다. main_copy.py import shutil ret ..
파이썬 튜토리얼 044. shutil 라이브러리의 copyfile 함수로 파일 복사 파이썬 표준 라이브러리 shutil의 copyfile() 함수를 이용해 임의 파일을 복사할 수 있다. import shutil ret = shutil.copyfile('main.py', 'main_copy.py') print(ret) 을 실행하면 main.py 파일이 저정되어 있는 디렉토리(폴더)에 main_copy.py 파일이 생성된다. shutil.copyfile() 함수는 복사된 파일 정보를 반환한다. 아래는 print(ret) 실행의 결과이다. main_copy.py import shutil ret = shutil.copyfile('main.py', 'main_copy.copy') print(ret) 와 같이 복사된 파일의 확장자는 원본과 동일하지 않게 설정할 수 있다. import shutil ..
파이썬 게임 004. 클래스 기반 pygame 프로그램의 기본 구조 Pygame 프로그램 개발 시작 단계에서 클래스를 기반으로 프로그램의 구조를 구성하면 과 같다. # python 3.9.6 # pygame 2.0.1 import pygame class GameApp: def __init__(self): pygame.init() self.screen = pygame.display.set_mode((640, 480)) self.running = True def game_input(self): for event in pygame.event.get(): if event.type == pygame.QUIT \ or event.type == pygame.KEYDOWN and event.key == pygame.K_ESCAPE: self.running = False break if..
파이썬 튜토리얼 043. Iterators와 Generators에 대한 예제 Iterators 문자열, 리스트, 튜플 및 딕셔너리 등은 container object로 분류된다. for 문에서 container object의 iter() 메서드가 호출된다. iter() 메서드는 __next__() 메서드를 포함하는 iterator object를 반환한다. __next__() 메서드는 정의된 요소를 하나씩 반환하며, 더 이상 반환할 요소가 없는 경우 StopIteration 예외를 발생시킨다. hello = 'hello' print(type(hello)) hello_iter = iter(hello) print(type(hello_iter)) print(next(hello_iter)) print(next(hello_iter)) print(next(hello_iter)) print(n..