본문 바로가기

[일상봇 만들기] 나의 하루하루를 도와줄 친구!

(15)
Level_01_part_0 우리 작은 친구와 만나보기 -on going '시작이 반이다' 라고 했습니다. 이 글을 읽고 있다면 이미 시작 한 것이니 반은 된 것이에요! 제일 처음 할 일은 파이썬을 설치해 앞으로 할 일의 준비작업을 하는 것입니다. 시작이 반이라면, 파이썬 설치는 약 40 퍼센트 정도 됩니다. 그렇다면 시작부터 파이썬 설치까지가 90 퍼센트 이네요. 거의 다 된 상태에서 코딩을 시작할 수 있는 것이에요. 이번 장에서는 내 컴퓨터에 파이썬을 설치하는 것을 다룰 것입니다. '파이썬을 설치한다' 라는 것에 대해 잠깐 이야기하자면... 우리에게 필요한 것은 프로그래밍 언어를 문법에 맞게 적을 곳과 코드를 작성 한 이후 이를 실행해 줄 것 입니다. 이러한 코딩을 하기 위해 필요한 기능들이 편하게 묶여있는 도구를 '통합 개발 환경' 이라고 합니다. 이 과정에서 우리는 a..
level_01_part_2 Level 01 02_자료를 알아보는 방법은? 1_변수명 호출 문법 변수명 = 자료 예) 변수명 또는 print(변수명) 변수명 = 자료 예) 변수명 또는 print(변수명) 여러분 주변의 누군가가 내 이름을 불러주면 나에게 의미가 생겨나는 것과 같아요. 숫자, 논리, 문자열, 리스트, 딕셔너리 등등 무엇이건 간에, 변수명을 호출하게 되면 해당 변수에 저장된 값을 확인할 수 있습니다. 프린터가 종이에 글자를 인쇄해 주는 것과 같이, print()는 변수 안에 들어있는 값을 문자열(글자)로 바꿔서 화면에 표시해주는 기능입니다. 예제 01 – 여러분의 나이, 이름 정보가 담긴 딕셔너리 형태의 mydata 변수를 만들어, 잘 만들어졌는지 변수명 호출로 확인해보세요 mydata = {'나이' : 30, '이름'..
level_01_part_1 Level 01 01_자료형의 종류와 이름 짓기 1_숫자(Number) 이름 = 숫자 예) a = 10 a = 10.5 나이, 키, 몸무게, 시험 성적과 같이 일상 생활에서 사용하는 일반적인 숫자라고 이해하면 됩니다. 파이썬에서 일반적으로, 그리고 이 책에서 우리가 사용하게 될 숫자는 정수와 실수 입니다. 여기서 잠깐, 학교에서 다루는 정수 실수 유리수 무리수... 와 같은 개념들을 신경쓰지 않아도 됩니다! 딱 두 개만 짚고 넘어가죠! 자료형 내용 예 정수형 소수점이 없는 숫자 / 영어로는 Integer / 줄여서 Int age = 30 실수형 소수점이 있는 숫자 / 영어로는 float weight = 60.6 예제 01 – 여러분의 나이 몸무게를 각각 age, weight 이름으로 만들어주세요. age..
[서버] 컴퓨터를 계속 켜 두어야 하나요? [to-do 있음] 내가 말을 걸었을 때, 어떤 말인지 인지하고 대답을 해주는 '하루하루' 를 만들어 보았습니다. 여기에서 더 나아가는 방향에 대해 다루어 보려고 합니다. 지금은 계속 파이썬 코드가 실행이 되야 하므로 내가 쓰는 컴퓨터를 항상 켜놓아야 합니다. 이렇듯 항상 컴퓨터가 켜져있어서 코드가 실행되게 만드는 것을 '서버' 라고 부릅니다. 우리 컴퓨터에서 하루하루 코드를 24시간 실행시키게 된다면 '서버' 의 기능을 수행한다고 볼 수 있어요. 내 컴퓨터를 계속 켜놓아야 하는 상황을 개선하는 방법을 몇 가지 소개드리면 1. 라즈베리파이와 같은 미니pc를 사서 와이파이 등으로 연결시킨 후, 코드를 실행시켜 계속 켜놓는다. 2. 네이버, 아마존, 구글 등의 서버 제공 서비스를 이용하여, 코드를 계속 실행시킨다. 각기 장단점..
200%_part_02 200% 03_조금 더 스마트하게 만들기 지금 아쉬운 점은 두 가지 정도가 있을 겁니다. 첫 번째는, 나의 말에 대답을 하면 코드가 종료된다는 것 두 번째는, 다른 정보들은 없고 날씨만 알려준다는 것 이 두 가지 아쉬운 점을 하나씩 개선해 보려고 합니다. check_msg 함수는 지금 내가 말한 가장 최근의 메시지를 가져오는 친구입니다. 내가 새롭게 말을 걸었을 때에는 가장 최근의 메시지가 업데이트 되기 때문에 문제 될 것이 없지만, 대답을 하고 나서도 내가 말을 건 내용이 가장 최근의 메시지로 남아있어요. check_msg 함수를 중간중간에 계속 실행시킨다면, 결과가 바뀌는 시점에 사용자가 새롭게 말을 걸었다고 생각해 볼 수 있습니다. controller 만 개선해서 이 기능을 구현해 보겠습니다. fr..
200%_part_01 200% 01_내가 너를 불러주기 전에는 다만 글자의 모음에 지나지 않았지만 1_(속닥속닥) 텔레그램은 사실 '메신저' 였던 겁니다. 우리가 카카오X 과 같은 메신저 프로그램을 사용하는 것은 정보를 전달받기 위해서 뿐만 아니라, 누군가에게 말을 걸 수 있다는 이유도 있었죠. 지난 시간에는 텔레그램을 통해 파이썬이 우리에게 말을 걸게끔 했습니다. 이번에는 텔레그램을 통해 우리가 파이썬에게 말을 걸어 볼 겁니다?!?! 말을 걸었을 때 파이썬이 대답을 하게끔 만들어 볼게요. 우리가 대화를 하면서 누군가에게 대답을 하는 경우를 생각해 본다면 1. 질문의 내용을 인지한다. 2. 내용에 맞는 대답을 준비한다. 3. 상대방에게 대답을 한다. 이렇게 세 단계로 이루어져 있습니다. 만약 파이썬에게 '오늘의 날씨' 를 물..
level_04_part_3 Level 04 03_파이썬과 대화하기 1_오는 것이 있으면, 가는 것이 있게 마련이다. 파이썬은 지금껏 수동적인 친구였어요. print() 함수를 입력하면 나에게 무언가를 보여주었고 내가 코드를 실행하면 바로 결과를 대답했죠. 이번 장에서는, 파이썬이 나에게 말을 걸게(?) 해 볼 겁니다. 날씨나 미세먼지, 뉴스정보 등등... 을 나에게 주기적으로 알려주는 그런 스마트한 친구인 하루하루를 소개합니다! [날씨정보 이미지] [뉴스정보 이미지] [교통정보 이미지] 우리가 여러 번 다루었던 정보들은 결국 컴퓨터 안에서만 있었는데요, 내가 휴대폰에서 주기적으로 정보를 받아볼 수 있게 해 볼 겁니다. 2_ 이를 위해 필요한 것들 [파이썬 텔레그램 봇 설치하기 이미지] [휴대폰에 텔레그램 설치하기 이미지] [텔레그..
level_04_part_2 Level 04 02_인터넷 시대를 살아가는 우리를 위한 자동화 1_파이썬에게 '나 대신 일 시키기' 1) 자동화? 그게 뭐지요? [뉴스 클리핑] 회사에서는 '뉴스 클리핑' 이라는 가장 대표적인 반복 작업이 있습니다. 이를 한 단계씩 풀어보며, 반복적인 요소가 어떻게 있는지 알아볼게요. 본인 회사 또는 경쟁사가 언급이 되어있거나, 업계의 동향과 관련된 최신 뉴스 등을 시장 동향을 알기 위해 매일매일 주기적으로 수집하는 것입니다. 이 업무의 단계는 아래와 같습니다. 1 - 네이버나 구글과 같은 검색 사이트에서 '키워드 입력' 2 - 특정 기간에 작성된 뉴스의 제목과 내용을 가져오기 3 - 제목과 내용을 엑셀로 정리해서 업무 관계자에게 메일 보내기 알고자 하는 키워드가 100 가지라면 100 번 반복, 매일..