Studying/Python (25) 썸네일형 리스트형 25. miniProject(15) - sending rain-alert message with Api (feat.requests, twilio, openweathermap, pythonanywhere) 이번에는 좀더 새로운 방식의 프로젝트를 해보도록 하자. 며칠전에 비가 미친듯이 쏟아져서 동네 주변이 여럿 잠겼었는데 이와 어쩌면 유사한 프로젝트를 해보려고 한다. 시간을 정해두고 밖에 비가 오면 우리에게 우산을 챙기라는 문자를 자동적으로 받을 수 있도록 작성해보자. 간단한 스케치를 해보고 그 다음 세분해서 작성하자. 우리는 OpenWeathermap 이라는 홈페이지의 API 를 사용하여 실시간 날씨를 data 로 받을것이다. 이 떄 api 의 변수로 날씨가 궁금한 도시의 위도, 경도 를 구해야한다. 우리가 data 를 받아 비가 온다는 조건을 설정한 후에는 twilio 라를 홈페이지의 기능을 통해 우리에게 메세지가 오도록 작성할 것이다. 마무리로는 우리의 코드가 언제나 정해진 비가 오는지 확인을 할 수 .. 24. miniProject(14) - QuizBrain (feat.tkinter, requests) 이번엔 앞서 만든 Quiz 프로그램에서 좀 더 변형을 시키는 프로젝트를 만들려고 한다. 우리가 전에 만들었던 퀴즈의 질문은 직접 타이핑해서 만들어놓은 dict 형태의 파이썬 파일이었다. 따라서 단순히 key, value 만을 사용해서 쉽게 불러와 사용할 수 있었다. ( 참고 내용 게시물 ) https://headingtocoding.tistory.com/16?category=1042348 14. miniProject(5) - Quiz 프로그램 이번엔 일련의 참, 거짓 퀴즈를 풀고 정답인지 아닌지 나타내는 프로그램을 작성해보기로 하자. 이번엔 파일을 4개로 구분해서 진행하자. 먼저 quiz 내용을 저장해놓을 data.py을 만든다. data.py에는 headingtocoding.tistory.com 이번에.. 23. miniProject(13) - french / english word study (feat.tkinter, pandas) 이번에는 영어, 프랑스어 단어를 공부하는 미니프로젝트를 진행해보자. tkinter 을 사용해 프랑스 단어 카드를 보여줄 것이다. 3초 안에 단어의 뜻을 떠올려야하고 3초가 지난 후에는 자동으로 화면이 카드가 돌아가 영어로 뜻을 보여줄 것이다. 영어가 나타난 후엔 스스로 정답을 맞췄는지 O, X 버튼을 클릭하여 결과를 기록하고, 우리가 공부해야할 단어들의 목록도 추가로 생성하여 관리할 것이다. 그렇다면 시작해보자. 먼저 가장 기본적인 세팅이다. 우리가 이 프로젝트를 시작할 때, 준비해둔 것이 "data / french_words.csv" 파일이다. 이 파일에는 우리가 창에 띄울 프랑스 단어와 영어 단어가 쌍을 이어 저장되어 있다. ( 나중에 단어들이 있는 french_words.csv 말고 words_to.. 22. miniProject(12) - password manager (feat.tkinter) 이번에는 좀 복잡한 프로젝트를 해보자. website 별로 우리는 이메일 혹은 이름을 입력하고 비밀번호를 저장하여 관리하는 password manager를 만들 것이다. 여기서 우리는 비밀번호를 우리가 직접 입력할수도, 아님 랜덤으로 만들 수도 있다. 그리고 홈페이지 별 사용자 이름과 비밀번호를 json 파일로 저장하여 관리할 것이고 비밀번호 찾기 기능을 구현할 것이다. 크게 랜덤 비밀번호를 생성하는 기능, 비밀번호와 이메일을 json 파일로 저장하는 기능, 저장했던 json 파일에서 비밀번호를 찾는 기능, 그리고 tkinter 창의 widget 을 구현하는 과정으로 나누어서 진행할 것이다. 먼저 랜덤 비밀번호를 생성하는 함수를 작성해보자. 무작위로 비밀번호를 만드는 generate_password() .. 21. miniProject(11) - miles / km 변환기 (feat. tkinter) 이번에는 miles 로 입력받은 숫자를 km 로 변환하는 프로그램을 작성해보자. 이 프로젝트에서 우리는 tkinter 라는 것을 사용할 것이다. 그렇다면 tkinter 는 무엇일까? tkinter 을 배우기 앞서 우리는 GUI 의 개념에 대해 먼저 배워야한다. GUI 는 Graphic User Interface로, 사용자 그래픽 인터페이스를 의미한다. 이는 컴퓨터 사용시에 유저가 그래픽을 이용하여 컴퓨터와 상호작용할 수 있도록 도와주는 것을 의미한다. 우리가 늘상 컴퓨터로 환경설정을 할 떄 뜨는 창, 버튼 등등을 GUI 라고 할 수 있다. 이런 GUI 를 사용하면 사용자 입장에서 더 쉽고 직관적으로 컴퓨터를 조작할 수 있는데, 이런 GUI 를 파이썬에서도 사용할 수 있다. 이 때 사용하는 module 이.. 20. miniProject(10) - 미국 states 퀴즈 (feat. turtle, pandas) 이번엔 미국의 지도를 띄워두고 50개 주 이름을 입력하는 퀴즈를 만들어볼 것이다. 플레이어가 입력한 내용이 50개 주 이름에 있다면 지도 상 주 위치에 그 정답이 화면에 띄워지는 방식으로 진행할 것이다. 예를 들어 미국 지도가 화면에 있고 Alaska 를 입력하면 지도 상 Alaska 위치에 표기가 될 것이다. 주 이름과 스크린 상의 좌표는 미리 만들어놓은 csv 파일을 사용할 것이다. 먼저 csv 파일이 무엇인지 간단히 이해하고 가자. csv 는 몇 가지 필드를 쉼표(,) 로 구분한 텍스트 및 텍스트파일이다. 확장자는 .csv 를 사용한다. 즉, 각 칼럼을 쉼표 또는 공백으로 구분하며 모든 행을 나열한 파일 형식을 의미한다. 일반적인 텍스트 파일이므로 pycharm, vscode 같은 에디터에서 그냥 .. 19. miniProject(9) - 길 건너기 게임 (feat. turtle) 이번엔 turtle graphics 을 사용하여 길 건너기 게임을 만들어보자. 화면 중앙 가장 하단부분에서 거북이가 최상단 까지 위쪽 방향키에 맞춰 이동할 것이다. 이동하는 도중에 화면 오른쪽에서 왼쪽 방향으로 무수히 많은 랜덤한 색깔 자동차들이 지나갈 것이다. 우리는 거북이를 조작하여 자동차에 치이지 말고 이동시키면 된다. 정상에 도달하면 Level 을 1 증가시키고 자동차들의 속도를 올린다. 이런식으로 게임을 진행할 것이다. 이번에도 역시 자동차 관련 내용을 다룰 car_manager.py, 거북이를 다룰 player.py, 점수판을 다룰 scoreboard.py 그리고 게임 내용을 다룰 main.py 로 파일을 구분지어 진행할 것이다. 먼저 player.py 이다. 먼저 거북이의 시작 위치를 나타낼.. 18. miniProject(8) - 뱀 게임 2 (feat. turtle) 앞서 작성하던 뱀 게임 1 에 이어지는 내용을 작성하려 한다. 게임에 대한 전반적인 내용은 이전 게시물을 확인해보자. https://headingtocoding.tistory.com/19 17. miniProject(8) - 뱀 게임 1 이번엔 좀 여러 단계를 거쳐야하는 프로젝트를 해보도록 하자. 지렁이 키우기라는 게임으로 우리에게 더 익숙한 종류의 게임을 만들어 볼것이다. 화면에 랜덤으로 노란색 먹이가 나타날 것이다 headingtocoding.tistory.com 이전 게시물에서 food.py와 snake.py를 이미 만들었다. 이제 scoreboard.py를 만들어보자. 우리는 점수 추가 관련, 점수 초기화 관련, 최고 점수 업데이트 관련 부분으로 나누어서 작성할 것이다. 역시 먼저 turtle.T.. 이전 1 2 3 4 다음