본문 바로가기

Python/Python

Python처음배우기(11),cv2.warpPerspective, 그림 변형 안녕하세요 오늘은 좀 어려운 것을 보여드릴께요 아래의 아름다운 Lenna 사진을 변행해 보겠습니다. P11,P12,P13,P14부분을 잘라서 P01,P02,P03,P04로 변형해 보겠습니다. P11 : 좌측/위쪽 P12 : 우측/위쪽 P13 : 좌측/아래 P14 : 우측/아래 * 순서가 중요합니다. 결과 화면입니다.(width,height = 250,350) width와 heigth를 200씩 키워본 화면입니다.(width,height = 250+200,350+200) 아래는 전체 코드입니다. Python의 CV2 라는 Computer Vision 모듈이 필요합니다. import cv2 as cv file = r'img\lenna.png' img = cv.imread(file) width,height =.. 더보기
Python,처음배우기(10),그래프그리기,maplotlib.pyplot Python에서 그래프 그릴때 많이 사용하는 maplotlib.pyplot를 사용한 예졔입니다. D드라이브의 test폴더에 test_data.py라는 파일에 Data를 저장하고 있습니다. 데이터를 불러서 그래프를 그려보겠습니다. #라이브러리를 불러 옵니다. import matplotlib.pyplot as plt import pandas as pd path_dir = 'd:\test' #path director를 설정합니다. file = os.listdir(path_dir) # path에 존재한는 파일 목록 가져오기 f2 = path_dir+'\'+file[0] df = pd.read_csv(f2) # test_data.py에서 데이터를 읽어서 DataFrame을 만들어요 l.. 더보기
Python,처음배우기(9) class예제 4각형이라는 "Rect" class를 만들고, 가로 2, 세로 3을 데입하여 면적을 구하는 간단한 방법 방법입니다. class Rect(object): # 클래스 선언 def __init__ (self, x, y): #클래스 실행시 초기화하는 부분입니다. self.x = x self.y = y def Area(self,x,y): # 면적을 구한는 함수 입니다. Area = self.x * self.y return Area # 면저글 반환합니다. def __str__ (self): # 클래스의 정보를 출력할 때 사용합니다. print('__str__') print("comment") return '({}, {})'.format(self.x, self.y) >>>p1 = Rect(3, 2) # Rect에 3.. 더보기
Python,처음배우기(8) argv 파이썬을 업무자동화를 위해 공부하고 있습니다. 저도 Python은 잘 모르지만, 아주 좋은 프로그램입니다. 무료이구요. python 실행시 인자 값(argv: Arguments Value)을 받을 수 있는 방법입니다. 이해를 돕기 위해 windows command창에서 python으로 'test.py'에 있는 코드를 실행하고, 'test2.txt'라는 인자 값을 test.py에 입력하는 프로그램입니 □ test2.txt 에는 아래와 같이 작성되었습니다. □ windows command창에서 실행 장면 입니다. □ Python 작성 코드 입니다. sys.argv의 타입(type)는 리스트(list) 형으로 sys.argv[0]에는 'test1.py'가 들어 있과 sys.argv[1]에는 'test2.txt.. 더보기
Python, 처음배우기(2) Spyder 사용법 파이썬을 업무자동화를 위해 공부하고 있습니다. 저도 Python은 잘 모르지만, 아주 좋은 프로그램입니다. 무료이구요. Spyder사용법을 소개합니다. Spyder는 Python 프로그램을 작성할 때 많이 사용합니다. ○ Anaconda Navigator에서 Spyder를 실행한다. ○ Spyder를 실행화면 입니다. 코딩하는 부분, 코딩 실행 결과 표시 부분, 코딩 실행시 변수 확인 부분이 잘 되어있습니다. ○ Hellow Python을 출력해 보겠습니다. 코딩창에 print("Hellow Python")를 입력한다. 파이썬은 대소문자를 구분하기 때문에 아래와 같이 소문자로 print를 입력합니다. 코드를 실행하기 위해 아래 화살표 부분을 클릭한다. 단축키는 F5 입니다. ○ 프로그램을 처음 깔고 실행.. 더보기
Python, 처음 배우기(1), Python 필수설치 프로그램 파이썬을 업무자동화를 위해 공부하고 있습니다. 처음 파이썬을 배우고자 하는 분이 깔아야 하는 순서는 다음과 같습니다. 1. 아나콘다(Anaconda)를 설치합니다. ○ https://www.anaconda.com 에서 자신의 PC의 시스템을 맞는 Ananconda를 설치한다. ○ 시스템 확인 방법입니다. ○ 아나콘다 설치 완료 화면입니다. ※ 저는 주로 Jupyter Notebook과 Spyder를 사용합니다. 2. 4개의 라이브러리 설치합니다. Windows의 커맨드(Command)창에 아래의 4개를 입력합니다. >easy_install Pillow >easy_install pyautogui >easy_install pyinstaller >easy_install opency-python 저도 잘 모르지.. 더보기
Python, 처음배우기(3), 메모장에 자동으로 글을 쓰고 배치파일(.bat) 만들기 업무자동화를 하기 위해서 Python을 배우고 있습니다. from pywinauto.application import Application # 메모장을 띄운다. app=Application().start("notepad.exe") # 메모장에 text를 적는다. app["제목 없음 - 메모장"].Edit.type_keys("Hello pywinauto",with_spaces = True) # 파일을 저장한다. app["제목 없음 - 메모장"].menu_select("파일(F)-->저장(S)") # 다른 형식으로 저장한다. app["다른 이름으로 저장"].Edit.type_keys("test1.bat") # .txt형식이 아닌 bat파일 형식으로 저장하기 위해 콤보박스를 선택하여 "모든파일"로 변경한다. .. 더보기
Python, 처음배우기(4), Google search, 파이썬 구글 검색 파이썬으로 구글 검색 기능을 소개합니다. 파이썬으로 5줄이면 구글을 실행하고, 검색어를 입력받아서 검색결과를 보여주는 코드입니다. ○ 파이썬 코드입니다. import webbrowser new = 2 tab_url = "http://google.com/?#q=" term = input("Enter search quary = ") webbrowser.open(tab_url + term,new=new) ○ 코드실행하면 검색할 키워드를 입력받는다. 예로 "white elephant"를 입력한다. ○ 구글에서 "white elephant"를 검색하여 결과를 열어준다. 감사합니다. 더보기
Python, 처음배우기(7), UDP 송신/수신 파이썬으로 UDP통신하는 방법을 소개합니다. ○ 조건 1. 노트북 1대로 송신/수신 테스트할 수 있어야 한다. 2. 파이썬 코드를 샐행할 수 있는 2개의 프로그램을 구동 합니다. ( 예: 아나콘다 스파이더, 아나콘다 주피터노트북 등) 3. 아나콘다 스파이더 : UDP송신 4.아나콘다 주피터 노트북 : UDP수신 ★ 서론이 길었죠. 본론으로 코드입니다. #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ #UDP송신....보내는 코드입니다. #아나콘다 스파이더에 구현하는 코드입니다. #~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ import socket import time sock =socket.socket(socket.AF_INET,socket.SOCK_DGRAM) Ho.. 더보기
Python, 처음배우기(5), pyautogui 한글 입력 해결 pyautogui에 한글 입력이 안되는 부분을 해결하였습니다. 한글폴더에 있는 파일을 실행할 때 사용하는데 사용됩니다. 예를 들어 E:\새폴더\1.exe를 실행하는 코드 입니다. "새폴더"글자를 인식하기 위해서 Pyperclip를 사용합니다. 저도 Python은 잘 모르지만, 아주 좋은 프로그램입니다. 무료이구요 질문을 해주시면 찾아보고 알려드리겠습니다. 더보기