[파이썬 실습] PyQt5 : QThread를 사용해 응답 없음 방지 & 여러 동작하기
·
🐍 Python/Application
안녕하세요. 프로그래밍을 하면서 여러 동작을 하기 위해서는 쓰레드란 개념을 알아야 합니다. 우선, 작업관리자를 한 번 보겠습니다. CPU는 한 번에 한 가지의 동작밖에 하지 못합니다. 하지만 G(10의 9제곱)단위로 동작합니다. 작업관리자를 확인하면 CPU는 하나인 반면, 프로세스는 184개가 1958개의 쓰레드를 통해 동작하는 것을 확인할 수 있습니다. CPU는 시간, 우선순위 등 여러가지 방식으로 할당합니다. 예를 들어, 이런식으로 쓰레드 1번 수행, 2번 수행, 다음 3번 수행하면서 반복합니다. 그러나 그 속도가 굉장히 빨라 사람들이 사용하는데 알아차리지 못합니다. #쓰레드를 선언하지 않은 예제 from PyQt5.QtWidgets import * from PyQt5.QtCore import * i..
인디자인 사용자가 원하는 단축키 만들기
·
인디자인
인디자인에서 편집을 하다보면 자주 사용하는 어떤 기능에 단축키가 있었으면 좋겠다 하고 생각이 들때.... 이럴때 직접 만들어 사용하면 됩니다. 한번 만들어 볼까요~ 기본 단축키에는 설정이 안되어 있지만, 선이나 개체에서 자주 사용하는 수평 공간 분포(균등분할)에 단축키를 만들어 보면서 연습해 볼께요~ 1. [편집] 메뉴의 [단축키]를 선택합니다. 2. 단축키 대화상자가 나타나면, 단축키를 만들고 싶은 수평 공간 분포가 어떤 카테고리에 있는지 찾아야 하는데 하나하나 클릭해서 찾기가 쉽지 않습니다. 아래와 같이 대화상자 오른쪽 하단에 있는 [세트표시]를 선택하면 아래와 같은 메모창이 열리면, 수평 공간 분포를 검색(Ctrl + F) 합니다. 제품 영역 : 개체편집 영역에 들어있는 걸 알 수 있습니다. 3. ..
[파이썬] 자료구조 : 재귀함수 & 스택구조 & LIFO구조
·
🐍 Python/Basic
재귀함수(Recursive function) : 자기 자신을 부르는 함수 리스트(List) : 동적인 배열 (튜플(tuple) : 정적인 배열) LIFO : Last in Fisrt out 스택(stack) : 일종의 바닥이 막힌 상자 혹은 더미, 나중에 넣은 물건은 나중에 꺼낼 수 밖에 없는 구조, LIFO(Last In First Out) 라고도 한다. 재귀함수를 이용해서 이 스택구조를 구현하겠습니다. (Push는 자료를 입력, Pop은 자료를 출력) #재귀함수를 이용한 스택구조 def stack(start , end): if start
[파이썬] 자료구조 : 버블 정렬
·
🐍 Python/Basic
버블 정렬(Bubble Sort) : 서로 인접한 두 원소를 검사하여 정렬하는 알고리즘 문제 : 9~0까지 배열 을 버블 정렬을 사용하여 오름차순으로 정렬하라! num = [9,8,7,6,5,4,3,2,1,0] for i in range(0, len(num)-1): if i != len(num)-1: for j in range(i+1, len(num)): if num[i] > num[j]: temp = num[i] num[i] = num[j] num[j] = temp print(num) #결과 [0, 9, 8, 7, 6, 5, 4, 3, 2, 1] [0, 1, 9, 8, 7, 6, 5, 4, 3, 2] [0, 1, 2, 9, 8, 7, 6, 5, 4, 3] [0, 1, 2, 3, 9, 8, 7, 6, 5..
[python] List, Dict 를 활용한 면접 문제 연습하기
·
🐍 Python/Basic
안녕하세요. 오늘은 파이썬 기본 문법인 List와 Dict을 활용한 면접 문제 코딩을 하나 작성하도록 하겠습니다. tuple( ( ) 사용) : 일반적으로 배열(정적할당)처럼 사용된다. 그러므로 불가변적으로 변수를 집어넣을 수 없다. List( [ ] 사용 ) : 일반적으로 배열(동적할당)처럼 사용된다. 그러므로 가변적으로 변수를 집어 넣을 수 있다. Dict( { } 사용) : List와 달리 Index도 입력해야한다. 그렇다면 Dictionary은 왜 사용하는가? 그 이유는 데이터 처리에 있어 Dict은 프로그래머가 이미 Index를 알고 있어, 바로 해당하는 데이터로 접근합니다. List는 배열 구조로서 크기가 10(0~9)인 List가 있다고 가정하게 되면, 9번 데이터에 접근하기 위해 순차적으로..
[파이썬 응용] 10탄 : 데이터 처리를 위한 Numpy
·
🐍 Python/Application
안녕하세요 오늘은 파이썬 Numpy를 설명하겠습니다. Numpy 중에서도 제가 자주 쓰는 내용 위주로 가겠습니다. 1. import import numpy as np 2. 내용 삽입 list_test = [] for i in range(5000*700): list_test = np.append(list_test, i) list_test라는 빈 list가 생성됩니다. for문을 타고 list_test에 차례대로 0부터 5000*700-1까지 값이 들어갑니다. append함수를 사용하면 list_test는 1차 배열로서 기능합니다. 만약 데이터셋이 5000개가 존재하고 하나의 데이터 셋안에 700개가 들어있다면, append함수는 길이가 5000 * 700개인 1차 numpy가 생성됩니다. 그렇다면 다시 l..
인디자인에서 들여쓰기 위치 적용할때 문자정렬이 되지 않을때 해결방법 2가지
·
인디자인
인디자인 편집작업 중 들여쓰기 위치 적용할때 문자정렬이 되지 않을때 첫번째 방법 Adobe CJK컴포저를 적용한 단락에 를 삽입해서 단락을 정렬하는 방법 1. 들여쓰기를 하고자 하는 곳에 커서를 놓습니다. 2. [문자] 메뉴의 [특수문자 삽입] - [기타] - [들여쓰기 위치]를 선택합니다. 하지만 단락이 일직선상으로 정렬되지 않는 문제가 생깁니다. 이렇게 말이지요~ 하지만 단락에서 Adobe(단락/싱글라인)컴포저로 변경할 경우 만 입력된 상태인데도 단락이 일직선으로 정렬이 됩니다. 이렇게 말이죠~ 두번째 방법 두번의 단축키를 사용하는 방법인데요~ (참고 : 비연결자는 단축키(Alt+\)로 만들어 사용하면 편리하답니다.) 들여쓰기를 하고자 하는 곳에 커서를 두고 1. [문자] 메뉴의 [특수문자 삽입] -..
인디자인에서 단락컴포저란?
·
인디자인
컴포저란 인디자인 편집작업시 문장의 균등분할에 관한 내용입니다. Adobe World-Ready 싱글라인 컴포저 Adobe World-Ready 단락 컴포저 Adobe CJK 싱글라인 컴포저 Adobe CJK 단락 컴포저 Adobe 싱글라인 컴포저 Adobe 단락 컴포저 위와 같이 6가지 종류의 컴포저가 있는데 이 기능은 문장을 시각적으로 보기좋게 균등분할시키는 기능입니다. 우선 단락컴포저는 ENTER키로 강제로 단락을 끊기전까지를 한 문장으로 인식하여 균등배치시켜주며, 싱글컴포저는 한줄에서 마침표 찍은 곳까지를 의미합니다. 1. Adobe World-Ready (단락/싱글라인) 컴포저 중동국가 언어를 편집할때는 이 두가지의 컴포저를 사용해야 문자가 제대로 보인답니다. 2. Adobe CJK (단락/싱글..
[파이썬 응용] 9탄 Selenium & Beautifulsoup 업무 자동화(매크로) : select 다루기 & ComboBox다루기
·
🐍 Python/Application
안녕하세요 오늘은 ComboBox와 select에 대해 이야기하겠습니다. 웹 크롤링을 하다 보면 위와 같은 콤보박스를 마주치게 됩니다. from selenium.webdriver.support.ui import Select select = Select(driver.find_element_by_id('locale_switch')) select.select_by_index(0) select.select_by_index(1) select.select_by_index(2)
[파이썬 응용] 8탄 Selenium & Beautifulsoup 업무 자동화(매크로) : iframe 사용하기 & HTML 안의 다른 HTML다루기
·
🐍 Python/Application
안녕하세요. 오늘은 웹크롤링에 대해 글을 쓰도록 하겠습니다. 제가 웹크롤링을 공부해야지! 해서 공부한게 아니라 일을 돕고자 자동화를 찾아보다 Beautifulsoup과 Selenium을 알게 되었습니다. 제가 일을 돕기 위해 만드는 프로그램은 전화번호를 자동적으로 따오는 프로그램입니다. 굳이 웹크롤링을 공부할 때 자바 스크립트 같은 언어는 몰라도 됩니다. Beautifulsoup는 홈페이지에 대한 내용을 불러오는 라이브러리이고, Selenium은 자동화를 구현하는 라이브러리입니다. 이 두 가지 라이브러리만 안다면 구현하는데 웬만한 자동화프로그램은 만들 수 있다고 생각합니다. 제가 만든 매크로 프로그램도 웹기반 지식을 모르는 상태에서 3일을 거쳐 만들었습니다. 동영상으로 보여드리고 싶지만, 프로그램 자체에..
18진수
'분류 전체보기' 카테고리의 글 목록 (24 Page)