Coding
-
[React] - 1) React 시작하기Coding/React.js 2019. 10. 26. 21:33
리액트 입문 포스팅은 '리액트를 사용하는 기술' 책으로 시작했음을 밝힙니다. 리액트란? 자바스크립트의 라이브러리인 리액트는, 다른 Vuejs, Angular 등과 달리 'View'에 중점을 두는 라이브러리 입니다. 리액트는 뷰의 한 요소를 찾아가 내부를 수정하는 것이 아니라, 데이터가 변할 때 마다 기존 뷰를 날려 버리고 처음부터 새로 렌더링하는 방식을 사용합니다. JSON 객체를 이용한다고 했을때 불필요한 파싱과정, 자식 노드를 찾아가는 과정, 이런것을 그냥 다 날려버리고 새로 만드는 식으로 하는 것이죠 . 리액트는 Virtual DOM 이라는 문서 구조를 사용하여, 데이터가 변하여 웹 브라우저에 DOM을 업데이트 할 때 DOM을 직접 수정하는 것이 아닌 DOM 업데이트를 추상화하여 처리 횟수를 줄이는..
-
[Python] Selenium 백그라운드(Headless)로 돌리기Coding/Python 2019. 10. 16. 21:09
Selenium Headless Selenium 라이브러리는 webdriver를 통하여 직관적으로 가상 웹 브라우저로 돌려볼 수 있다는 장점이 있습니다. 하지만 가끔씩은 돌릴 때 마다 브라우저 창이 열리면서 입력되는 것이 귀찮고, 괜히 프로그램이 무거워질 우려가 있습니다. 이번 포스팅에서는 브라우저를 열지 않고, 백그라운드에서 Selenium을 돌리는 법을 소개합니다. from selenium import webdriver options = webdriver.ChromeOptions() options.add_argument('headless') options.add_argument('window-size=1920x1080') options.add_argument("disabl..
-
[Python] 문자열 아스키코드로 변환하기Coding/Python 2019. 10. 15. 13:38
Python 아스키코드 변환 C언어 같은 경우, 문자열을 아스키코드로 바꾸어 출력하는 것은 매우 쉬웠습니다. char c = 'A' print("%d",c) 이렇게 문자열을 정수형으로 출력만 해줘도 아스키코드를 출력할 수 있었죠. 파이썬은 자료형을 따로 구분지어 선언할 수 없으나, 간단한 메소드로 아스키코드로 변환이 가능합니다. c = 'A' print(ord(c)) 이렇게 간단하게 아스키코드로 변환이 가능합니다. (++이 코드로 백준알고리즘의 11654번 문제 해결이 가능합니다)
-
[백준알고리즘] 1152번: 단어의 개수 - python 풀이Coding/Algorithm 2019. 10. 15. 13:29
1152번: 단어의 개수 출처: 백준알고리즘 문제 영어 대소문자와 띄어쓰기만으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 입력 첫 줄에 영어 대소문자와 띄어쓰기로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 띄어쓰기 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열의 앞과 뒤에는 공백이 있을 수도 있다. 출력 첫째 줄에 단어의 개수를 출력한다. 풀이 # 백준 알고리즘 1152번: 단어의 개수 a = input() b = list(a.strip().split()) print(len(b)) 문자열을 입력받는다. s..
-
[백준알고리즘] 17487번: 타자 연습 - python 풀이Coding/Algorithm 2019. 10. 14. 17:08
17487번: 타자 연습 출처: 백준알고리즘 문제 [그림1] QWERTY 키보드 영문 자판 배열. 출처: Wikipedia 건덕이는 최근 자신의 독수리 타법의 속도에 좌절하며 타자를 연습하기 시작했다. 건덕이가 연습하는 타자법은 QWERTY 자판 배열을 기준으로 Y, G, B와 같거나 왼쪽에 있는 키는 왼손으로, 나머지 키는 오른손으로 누르는 타자 기법이다. 기준은 키보드의 각 행에 한한다. 건덕이는 한 쪽 손이 더 많이 쓰이면 비효율적이라고 생각한다. 따라서 양 쪽에 달려 있는 Shift키와 길이가 긴 스페이스바를 통해 양손의 키를 누른 횟수의 차를 최소로 하도록 문장을 입력하려고 한다. 건덕이의 각 손이 키보드를 누른 횟수를 구해 보자. 입력 건덕이가 입력할 문장S가 주어진다.S는 영어 대소문자와 공..
-
[BeautifulSoup] github repository 이름 크롤링하기Coding/Python 2019. 10. 11. 17:36
BeautifulSoup BeautifulSoup로 Github 크롤링하여 repository 목록 나열하기 import requests from bs4 import BeautifulSoup githubId = input('아이디를 입력하세요 => ') url = 'https://github.com/{}?tab=repositories'.format(githubId) req = requests.get(url) soup = BeautifulSoup(req.text, 'html.parser') repositoriesList = soup.select('#user-repositories-list > ul')[0] for repository in repositoriesList: repoName = repositor..
-
[Python] zAI 라이브러리를 이용하여 간단한 인공지능 사용하기 - 3Coding/Python 2019. 10. 10. 10:46
zAI 라이브러리 - 사람 얼굴 추출하기 이전 포스팅에서 라이브러리 설치와 API Key 발급을 마쳤습니다. zAI 라이브러리를 이용하여 간단한 인공지능 사용하기 - 1(라이브러리 설치) zAI 라이브러리를 이용하여 간단한 인공지능 사용하기 - 2(API Key 발급) 이제 zAI 라이브러리를 실제로 사용해봅시다. 우선, 사람이 여러 명 있는 사진을 준비합시다. import zAI from zAI import zImage zAI.utils.set_backend_key(key_name='MICROSOFT_AZURE_VISION_API_KEY', key_value='API KEY', save=True) zAI.utils.set_backend_key(key_name='MICROSOFT_AZURE_URL', k..