2019/08 9

정적 타입 언어, 동적 타입 언어 :: Python?

타입이란 자료형입니다. int형, float형, double형, string형, 객체 등이 있습니다. 정적 타입 언어 타입(자료형)이 고정된 언어입니다. 정적언어는 자료형을 컴파일 시에 결정하는 것입니다. 따라서 소스코드 상에 자료형을 지정해줍니다. 정적언어의 대표적인 종류는 C, C#, C++, JAVA 등이 있습니다. 컴파일 시 자료형에 맞지 않은 값이 저장되면 컴파일 에러가 발생합니다. 정적언어는 컴파일 시 타입에 대한 정보를 결정하기 때문에 속도가 빠르고, 타입 에러로 인한 문제점을 초기에 발견할 수 있으므로 타입의 안정성이 올라갑니다. 동적 타입 언어 타입(자료형)이 동적으로 변하는 언어입니다. 동적언어의 자료형은 실행될 때 결정됩니다. 정수형으로 선언되었던 변수가 문자형으로도 저장되고 객체로도..

두 정수 사이의 합 (Level 1) :: 알고리즘

문제 설명 두 정수 a, b가 주어졌을 때 a와 b 사이에 속한 모든 정수의 합을 리턴하는 함수, solution을 완성하세요. 예를 들어 a = 3, b = 5인 경우, 3 + 4 + 5 = 12이므로 12를 리턴합니다. 제한 조건 a와 b가 같은 경우는 둘 중 아무 수나 리턴하세요. a와 b는 -10,000,000 이상 10,000,000 이하인 정수입니다. a와 b의 대소관계는 정해져있지 않습니다. 입출력 예 a b return 3 5 12 3 3 3 5 3 12 풀이 def solution(a, b): answer = 0 if a < b: min = a max = b+1 else: min = b max = a+1 for x in range(min, max): answer += x return an..

알고리즘 2019.08.17

Selenium 사용법(자동 로그인)

selenium은 브라우저를 자동화하는 도구입니다. 기본적으로 웹 어플리케이션 자동화 테스트를 위해 사용됩니다. 그러나 이것에만 국한되지 않고 확장하여 사용할 수 있습니다. 이번에는 브라우저에서 자동으로 원하는 페이지에 접속하여 로그인까지 하는 예제를 해보겠습니다. selenium 설치 및 사전 준비 크롬 설치 selenium은 크롬 기반 프레임워크입니다. 따라서 PC에 크롬이 설치되있어야합니다. selenium 모듈 설치 pip install selenium 웹 드라이버 설치(https://sites.google.com/a/chromium.org/chromedriver/) URL에 들어가서 stable 설치 오류나면 버전을 확인하여 다시 설치 다운받은 웹드라이버의 버전은 설치된 크롬의 버전보다 낮아야 ..

python 데이터 통신 프로토콜 : pickle 모듈

pickle 모듈은 python 객체를 직렬화 역질렬화하는 바이너리 프로토콜입니다. 얼핏보면 어렵다고 생각할 수 있는데 하나씩 살펴보겠습니다. pickle 모듈은 python에서만 사용 할 수 있습니다. 따라서 python 객체를 직렬화 역직렬화 한다고 하였습니다. 직렬화란 데이터 스트림에 쓰기 위해 객체에서 연속적인 데이터로 변환하는것이고 역직렬화는 반대입니다. pickle에서는 역속적인 데이터를 바이너리 형식으로 저장합니다. 사용법 pickle은 직렬화 역직렬화 방법만 알면 됩니다. dumps 데이터를 직렬화합니다. 직렬화한 데이터를 출력해보면 바이너리형식임을 알 수 있습니다. 소스코드 : import pickle data = { 'name': 'lee', 'age..

롱 샷 :: 영화 리뷰

영화 초반에는 영어 대사를 듣기위해 집중하다보니 영화에 집중도가 떨어지고 재미없게 느껴졌는데 그 사실을 깨닫고 영화에 집중하니 같은 영화인데 갑자기 재밌게 느껴졌습니다. 인생도 그런거 아닐까요? 내가 하고자하는 그것에 집중해야지 다른것을 생각하다보면 본질을 잃어버릴 수 있다는 생각을 하였습니다. 영화 이야기를 본격적으로 해보겠습니다. 모든것이 완벽한 국무부 장관 샬롯(여자주인공)과 자신의 정의를 가지고 그 정의만 바라보는 프레드(남자 주인공)의 이야기입니다. 프레드는 작은 언론사의 기자였습니다. 다른 언론사와 달리 자신이 다루고 싶은 주제를 마음껐 이야기할 수 있기에 열정적으로 취재를 하고 자랑스럽게 지내고 있었습니다. 하지만 어느날 프레드가 싫어하는 언론사에게 합병되게 되며 퇴사를 하게됩니다. 이때 팀..

티스토리 마크다운 문법으로 포스팅하는 방법

문제점 티스토리에서는 포스트를 작성할 때 마크다운 언어를 지원합니다. 하지만 마크다운 언어는 지원해도 스킨에서 사용하는 CSS로 인해 포스팅을 한 뒤 결과를 확인해보니 헤더가 인용문으로 표출되고 코드블럭 부분도 이상하게 나오는걸 확인하였습니다. 해결방안 1 먼저 다른 스킨을 사용해볼까 하고 다른스킨을 찾아보았는데 마음에 드는 스킨도 없고 그나마 괜찮은 스킨도 마찬가지로 결과가 이상하게 나왔습니다. 해결방안 2 다른 사람들을 어떻게하고있나 찾아보니 github-markdown-css를 적용하여 표출하는 블로그가 있어 참고하였습니다. 사전 지식(CSS란?) 마크다운 문법으로 포스팅하기 위해 필요한 CSS에 대한 기본 지식에 대해 알아볼까요? CSS란 Cascading Style Sheet의 약자로 HTML ..

일상/메모장 2019.08.11

문자열 포맷팅 (python)

문자열 포맷팅 "김씨는 24살 입니다." "이씨는 28살 입니다." "조씨는 36살 입니다." 위 문장들을 살펴보면 "성"씨는 "나이"살 입니다 와 같은 포맷이 정해져있고 성과 나이에 해당하는 값만 다르게 쓰여집니다. python에서 위와 같이 사용하는것이 문자열 포맷팅 입니다. 이를 위해 format()을 사용합니다. 중괄호({})를 이용하는 방법 소스코드: name = ["김", "이", "조"] age = [24, 28, 36] for x in range(3): print("{}씨는 {}살 입니다.".format(name[x], age[x])) 실행 결과: 김씨는 24살 입니다. 이씨는 28살 입니다. 조씨는 36살 입니다. format 인자의 순서대로 문자열의 중괄호({}) 안에 변수들이 들어갑니..

구글애드센스로 돈 벌기 리뷰

구글 애드센스로 돈 벌기국내도서저자 : 안동수(풍요)출판 : 아틀라스북스 2016.11.15상세보기 구글 애드센스를 떠올리면 제일 먼저 드는생각은 `돈도 안되는데 그걸 왜 하는거지?` 라는 생각이였습니다. 대학교때부터 블로그하면서 애드센스 등록해볼까 했었는데 노력에 비해 결과가 작을것같다는 생각과 블로그를 더럽히는것같은 기분에 생각에만 그쳤습니다. 하지만 이번에 이 책을 읽으며 다시 한번 결심을 하게되었습니다. 글쓴이도 블로그를 하다가 해당 내용을 정리하여 책으로 냈는데 저도 블로그에 공부한 내용을 포스팅하고 최종적으로는 내용들을 정리하여 전자책을 써보는 목표가 생겼습니다. 책에 나오는 팁을 정리해보면 수익금을 받기위한 외화 입출금통장은 SC 제일은행으로 합니다. 일반 국내 시중은행에서는 100달러 이상..

일상/책 리뷰 2019.08.08

git 파일 상태

파일은 크게 Tracked(관리대상)와 Untracked(관리대상아님)으로 나눈다. 처음 파일을 생성하면 Untracked 상태이고 add 하면 Tracked 상태가되고 rm 명령어 후 커밋으로 파일을 Untracked 상태로 변경할 수 있다. Tracked 상태는 Unmodified, Modified, Staged 3가지 상태로 나눌 수 있다. Unmodified: commit으로 저장된 상태 Modified : Unmodified상태였던 파일들을 수정하였을 때 상태 Staged : 최소 파일 생성 후 add를 하거나 modified 상태의 파일을 add, rm 하였을 때 상태

형상관리/GIT 2019.08.07