BLEX
로그인 회원가입
파이썬 자료형 연산자 시간복잡도

파이썬 자료형 연산자 시간복잡도

2020. 03. 04.
5분

최근 사고력의 향상을 위해서 꾸준하게 알고리즘 문제를 풀어보고 있다. 당연 필자가 가장 자신있는 언어라고 생각하는 파이썬을 응용하고 있는데 시간초과가 생각보다 많이 발생했다. O(1)로 접근할 수 있는 요소를 O(n)으로 접근하는 등 기본기의 부족으로 인함으로 보였다. 그리하여 파이썬의 각 자료형의 연산에 대한 복잡도를 어지간하면 숙지해 놓으려고 한다. 출처 : https://www.ics.uci.edu/~pattis/ICS-33/lectures/complexitypython.txt 리스트자료형 리스트의 …

baealex
baealex
0
[한라대학교 공지 알림 봇] 유지보수 2탄

[한라대학교 공지 알림 봇] 유지보수 2탄

2020. 03. 02.
5분

Intro 다시는 이 시리즈에 글 쓸 일이 없길 바랐지만. 짜잔. 그럴리가 없죠. 시작하겠습니다. 유지보수 2탄 사건 설명 사건 개요 알람이 폭팔적으로 와서, '또 제목을 바꾼건가?', '난 잘 고쳤는데?'라는 생각을 했다. 그런데 그게 아니였다. 게시글을 지운것이다. 게시글은 3가지 방식으로 작동된다. 작성,수정,삭제 작성과 수정에 대한 대책은 바로 앞 게시글에서 해결했다. 하지만 삭제를 …

mildsalmon
mildsalmon
2
RESTful API의 개념과 장고의 REST Framework

RESTful API의 개념과 장고의 REST Framework

2020. 03. 02.
8분

RESTful API와 프론트엔드 프레임워크의 도입으로 서비스형 블로그의 발전을 시도하고자 하였다. REST API의 개념과 Django REST Framework의 구현에 대해 학습하였으며, HTTP Method와 Content-type을 알아내고 적절한 응답을 하는 것을 DjangoRESTframework로 구현할 수 있다는 것을 알게 되었다. 프레임워크의 도입은 구현을 간단하게 만들어주며, 코드의 재사용성을 높이고 프론트엔드와 백엔드의 완전한 분업이 가능하다는 장점이 있다.

baealex
baealex
0
[한라대학교 공지 알림 봇] 유지보수

[한라대학교 공지 알림 봇] 유지보수

2020. 03. 02.
3분

Intro 내가 다시 이 시리즈를 작성할 일은 없을 줄 알았는데... 사건 설명 사건 개요 학교에서 일반공지 게시글의 제목을 바꿨다. 수정 과정 ... new_file.write(posts[0].text) ... elif before != post.text: ... 지금까지 사용한 코드는 post.text (게시글의 제목)으로 최신 게시글인지 판단했다. 게시한 공지의 제목을 바꾼다는 생각을 하지 못해서이다. 충분히 가능했으나, 에측하지 못해서 에러가 …

mildsalmon
mildsalmon
0
초콜릿 하트 드래곤

초콜릿 하트 드래곤

2020. 02. 28.
5분

제목 : 초콜릿 하트 드래곤 인상 깊은 핵심 문구 뭐 어때? 이 책을 어떻게 읽게 되었는지 완벽한 공부법저자인 신박사님과 고작가님이 추천하길래, 짧은 소설이기도 해서 기분전환겸 서점에 들러 구매했다. 저자 histroy 저자 : 스테파니 버지스 출판년도 : 2019.09 출판사 : (주)로크미디어 줄거리 어린 드래곤인 어벤추린이 원하는 것은 단 하나, 집 밖의 …

mildsalmon
mildsalmon
0
crontab

crontab

2020. 02. 26.
5분

Intro Crontab 은 특정 시간에 특정 작업을 해주는 리눅스 스케줄러이다. 주요 명령어 (options) -u crontab -u define user user 사용자에 대해서 크론탭을 수행한다. 생략하면 크론탭 명령을 실행하는 사용자에 대해서 크론탭 수행 -e crontab -e edit user's crontab VIM을 사용하여 크론탭을 편집한다. 수정 후 할일 service crond stop service crond start …

mildsalmon
mildsalmon
0
1인 웹개발 프로젝트 : 중간회고

1인 웹개발 프로젝트 : 중간회고

2020. 02. 25.
33분

블로그 서비스 블렉스는 다양한 블로그 서비스의 장단점을 파악하고 본연의 기능에 충실한 서비스를 만들기 위해 개발되었습니다. 초기에는 마크다운 변환을 위해 GitHub API를 사용했으나, Parsedown 라이브러리를 활용해 서버를 열고 성능 개선을 이루었습니다. 이미지 업로드와 소셜 로그인 구현 등 다양한 기능을 개선하면서 조언을 구하는 등 진행 상황과 방향성을 불안해하면서도 노력하며 개발을 마무리했습니다.

baealex
baealex
4
[한라대학교 공지 알림 봇] 마치며

[한라대학교 공지 알림 봇] 마치며

2020. 02. 24.
3분

Intro 블로그 첫 프로젝트가 끝났습니다. 다음에 다른 프로젝트로 찾아뵙겠습니다. 한라대학교 공지 알림 봇 제작기를 읽어주신 모든분들께 감사드립니다. 최종 코드 일반 공지_ver # -*- coding: utf-8 -*- ########## 서비스 코드 import requests from bs4 import BeautifulSoup import os import telegram import sys import time BASE_DIR = os.path.dirname(os.path.abspath(__file__)) my_token = '봇 토큰' …

mildsalmon
mildsalmon
2
[한라대학교 공지 알림 봇] 서버 작업

[한라대학교 공지 알림 봇] 서버 작업

2020. 02. 24.
7분

Intro서버는 AWS의 Amazon Lunux 2를 사용했다. PuTTY나는 서버에 접속할때 PuTTY를 주로 사용한다. PuTTY는 SSH, Telet 등의 접속방식을 제공한다. PuTTY는 서버에 원격으로 접속하게 도와주는 프로그램이다. 다운로드 위 링크를 통해 다운받을 수 있다. PuTTY 접속 방법 빨간 부분만 잘 설정해주면 잘 접속이 된다. AWS .pem을 .ppk로 변환하는 방법 위에서 puttygen.exe를 클릭한다. Load를 …

mildsalmon
mildsalmon
0
[한라대학교 공지 알림 봇] 코드분석 (telegram bot)

[한라대학교 공지 알림 봇] 코드분석 (telegram bot)

2020. 02. 24.
7분

Intro 이번 챕터에서는 telegram bot을 활용해서 공지가 생기면 알람이 오도록 구현해보겠다. 지금까지 만든 코드를 실행하면 위 같은 결과가 나온다. 공지를 제외한 1page에 있는 게시글을 전부 크롤링한 모습이다. telegram bot 텔레그램 봇 정리본 위 정리본에 링크 되어 있는 문서를 참고하자. 봇 만들기 BotFather 텔레그램 봇은 BotFather을 통해 만들 수 있다. 만드는 …

mildsalmon
mildsalmon
0
[한라대학교 공지 알림 봇] 코드분석 (Requests, bs4)

[한라대학교 공지 알림 봇] 코드분석 (Requests, bs4)

2020. 02. 19.
7분

Intro 이 글에서는 Requests와 BeautifulSoup를 내 코드에 어떻게 적용시켰는지 알려준다. 웹페이지를 크롤링하기 위핵서는 크롤링할 웹의 주소 웹에서 F12(개발자 도구)를 누르면 나오는 소스 분석 이 두가지가 필요하다. Requests 우선 웹의 주소를 가지고 크롤링할 웹의 데이터를 가져와보자. # -*- coding: utf-8 -*- import requests req = requests.get('http://www.halla.ac.kr/mbs/kr/jsp/board/list.jsp?boardId=23401&mcategoryId=&id=kr_060101000000') html = req.text print(html) # …

mildsalmon
mildsalmon
0
[Document] OS

[Document] OS

2020. 02. 17.
3분

OS 모듈은 파이썬을 설치할 때 자동으로 설치되는 파이썬 라이브러리에 포함된다. 그리고 환경 변수나 디렉토리, 파일 등의 OS 자원을 제어할 수 있게 해주는 모듈입니다. 현재 작업 폴더 얻기 os.getcwd()를 사용하여 얻습니다. (get current working directory) print(os.getcwd()) # D:\source\test 디렉토리 변경 os.chdir(path)를 사용합니다. (path는 문자열이어야함.) os.chdir("C:\WINDOWS") print(os.getcwd()) # C:\WINDOWS 시스템 명령어 호출하기 …

mildsalmon
mildsalmon
0
[Document] Python Telegram Bot

[Document] Python Telegram Bot

2020. 02. 17.
1분

아래 링크들이 다 잘되어 있어서 일단 링크로 대체한다. Telegram Bot API 튜토리얼 API는 Telegram Bot API를 참고하면 된다. https://python-telegram-bot.readthedocs.io/en/stable/ 참고문헌

mildsalmon
mildsalmon
0

한 달 안에 취업하기 #17

2020. 02. 15.
1분

오늘 할 일 알고리즘 1문제 면접 문제 복기하기 알고리즘 1문제 Github 면접 문제 복기하기 자바스크립트의 자료형 Number String Boolean Undefined Null Function Object Array 자료형을 두 종류로 나누기 원시타입 : Number, String, Boolean, Undefined, Null 참조타입 : Object, Function, Array 자바스크립트 this의 4가지 활용법 일반 함수 실행 방식 (this 값 …

kimyoungjo
kimyoungjo
0
[Document] Requests

[Document] Requests

2020. 02. 15.
11분

간단한 Requests 예시 r = requests.get('https://api.github.com/user', auth=('user', 'pass')) print(r.status_code) print(r.headers['content-type']) print(r.encoding) print(r.text) print(r.json()) # 403 # application/json; charset=utf-8 # utf-8 # {"message":"Maximum number of login attempts exceeded. Please try again later.","documentation_url":"https://developer.github.com/v3"} # {'message': 'Maximum number of login attempts exceeded. Please try again later.', 'documentation_url': 'https://developer.github.com/v3'} r.status_code 는 .get 부분에 auth=에 …

mildsalmon
mildsalmon
0

라이브러리 해석에 대한 설명

2020. 02. 14.
0분

이 시리즈는 내가 파이썬으로 코딩을 할때 사용한 모듈이나 버그 해결 과정을 나만의 방식으로 정리해 놓는 공간이다. 나는 이런 경험이 있다. 인터넷을 보고 비슷하게, 따라서 코딩을 했지만 해당 모듈이 어떻게 동작하는지 함수에서는 어떤 매개변수를 쓰는지 궁금했다. 그래서 Document를 찾아봤지만, 자세히 안보고 넘기게 되더라. 보통 영어이고, 문서가 엄청 길기 때문에.. 그래서 그냥 …

mildsalmon
mildsalmon
0

한 달 안에 취업하기 #16

2020. 02. 14.
1분

오늘 할 일 알고리즘 1문제 웹 관련 개념 잡기 알고리즘 1문제 Github 웹 관련 개념 잡기 자바스크립트의 이벤트 위임 요소들 각각에 이벤트를 부여하는 것이 아닌 하나의 이벤트 리스너로 전체영역에 등록하는 것. document.addEventListener('DOMContentLoaded', function() { let app = document.getElementById('todo-app'); // 리스트 아이템의 전체 영역에 이벤트 리스너를 등록합니다. app.addEventListener('click', function(e) { if …

kimyoungjo
kimyoungjo
0
[Document] beautifulsoup4

[Document] beautifulsoup4

2020. 02. 12.
32분

소개 Beautiful Soup is a Python library for pulling data out of HTML and XML files. It works with your favorite parser to provide idiomatic ways of navigating, searching, and modifying the parse tree. It commonly saves programmers hours or days of work. These instructions illustrate all major features of …

mildsalmon
mildsalmon
0
[한라대학교 공지 알림 봇] 코딩

[한라대학교 공지 알림 봇] 코딩

2020. 02. 12.
4분

A. 개괄적 도식화 개괄적으로 도식화를 하면 저런 모습이다. 나(client)는 학교 공지사항이 최신화 되면 알람받기를 원한다 위 목적을 해결하기 위해서는 학교 공지사항이 최신화 되면 알람오기를 원한다 (나에게) 위 두가지 사항을 만족시켜야 한다. 그러므로 나는 학교 공지사항이 최신화 되는지 지속적으로 확인하는 부분과 알람을 보내주는 부분을 만들것이다. 때문에 알람을 보내주는 부분은 텔레그램과 카카오톡을 …

mildsalmon
mildsalmon
1
[한라대학교 공지 알림 봇] 개발 환경 및 개요

[한라대학교 공지 알림 봇] 개발 환경 및 개요

2020. 02. 12.
1분

A. 개요 17년 말쯤에 학교 근로장학생과 기타 공지를 확인하기 위해서 매일 학교 홈페이지에 들어갔던 기억이 난다. 매일같이 홈페이지에서 공지를 확인하는 일은 상당히 귀찮았다. 그래서 공지가 올라오면 알림을 받아보자 하고 검색을 했다. 다양한 방법이 나왔고, 난 웹 크롤링과 텔레그램으로 새 공지를 실시간으로 받았다. 1. 구글 알리미 2. rss 3. 웹에서 홈페이지가 …

mildsalmon
mildsalmon
0

한 달 안에 취업하기 #15

2020. 02. 11.
2분

오늘 할 일 알고리즘 1문제 vingle 문제 풀기 프론트엔드 면접질문 달아보기 글 복습 javascript 개념공부 알고리즘 1문제 Github Vingle 문제 풀기 Vingle 사전 평가 문제 그림1에서 test.txt 가 있을 때 log 를 작성해주세요. 132 그림1에서 test.txt 가 없을 때 log 를 작성해주세요. 13 다음과 같이 Callback이 중첩된 코드를 어떻게 하면 …

kimyoungjo
kimyoungjo
0
한 달 안에 취업하기 #14

한 달 안에 취업하기 #14

2020. 02. 10.
1분

오늘 할 일 알고리즘 1문제 알고리즘 1문제 Github 중요 공지 오늘 지원했던 회사 중 한 곳에서 면접제의가 왔다. 그쪽에서 말씀하시길 1-2시간이 걸리는 기술면접이 될것이라고 엄포를 놓은지라 발등에 불이 떨어졌다. 면접일은 목요일이고 그 날까지 하루 1알고리즘을 제외하고는 모두 이론만을 다뤄야 할 것 같다. 그 이론은 과거에 했던 면접질문 답변 달아보기가 될 …

kimyoungjo
kimyoungjo
0
첫 출근을 준비하는 자세

첫 출근을 준비하는 자세

2020. 02. 09.
7분

스타트업에 대한 관심과 입사제의 거절에 대한 고민, 그리고 자바스크립트에 대한 노력 등을 통해 개

baealex
baealex
0
한 달 안에 취업하기 #13

한 달 안에 취업하기 #13

2020. 02. 09.
2분

오늘 할 일 알고리즘 1문제 토이 프로젝트 시작 프로그래밍 관련 유튜브 영상 리뷰해보기 알고리즘 1문제 오늘의 문제 : https://programmers.co.kr/learn/courses/30/lessons/42586 Github 토이 프로젝트 시작 기한을 좀 2.14까지로 잡았는데 아무래도 새로운 개념인 React Hooks와 Redux를 배워가면서 동시에 프로젝트에 접목시켜야 하기 때문에, 기한을 넉넉하게 잡았다.(부족할지도 모른다.) 이번에는 우리 스터디의 특성에 맞춰서 모바일 환경을 …

kimyoungjo
kimyoungjo
0
31
32
33
34
35
BLEX

© 2026 BLEX. All rights reserved.