본문 바로가기

개인공부/python

(100)
22.12.09 파이썬 코딩 퀴즈#4 (나도코딩 - 레벨3) 이번 퀴즈는 조금은 재미있고 색다른 방법으로 코딩을 작성해야 한다. 퀴즈 내용에 보면 대략적으로 어떻게 작성해야 할지에 대한 가이드라인을 제공하기에, 천천히 위에서부터 코드를 적어나가 보자. 먼저 Word라는 클래스를 생성해 주었다. 총 4개의 값을 전달받아 class를 생성하게 되며, 여기서 self는 자기 자신을 의미한다. 참고로 self.question ... 값들이 현재 비어있는 상태이고, 사용자로부터 4개의 값들을 전달받으므로, 작성순서는 self.question 이 먼저이다. (반대로 적으면 에러가 난다.) 이제 바로 아래에 show_question()과 check_answer()함수(methods)를 정의해 주면 간단하게 해결된다. input으로 입력받는 값들은 문자형 이기 때문에 반드시 i..
22.12.09 파이썬 코딩 퀴즈#3 (나도코딩 - 레벨1) 3번째 퀴즈이다. 먼가 복잡해 보이지만, 실제로는 홀수 좌석만 표시해주면 되는 굉장히 간단한 문제이다. ... 딱히 풀이라고 할 것도 없다. 단 한가지 여기서 i 는 정수형이기 때문에 문자열과 같이 사용하려면 f-string을 사용하던지 아니면 str()로 문자형으로 바꾸어서 사용해 주어야 출력된 결과값이 좀더 깔끔하다. 다른 방법으로는 range()에 범위를 설정해 주는 방법이 있는데, 값이 없더라도 위 코드처럼 콜론(:)으로 구분해 주어야 한다. 순서대로 시작값, 끝값, 찾을 조건(slice step)이다. 2라는 뜻은 시작값을 기준으로 2칸 건너띈 값이다. 시작값을 1로 주고 실행하게 되면 반대로 짝수로 된 값들이 출력된다. 끝 값은 범위를 해당 range()의 범위를 벗어나도 오류없이 작동한다. ..
22.12.09 파이썬 코딩 퀴즈#2 (나도코딩 - 레벨4) 다음 문제는 추억의 행맨 게임 만들기이다. 굉장히 재미있게 했었던 영어 단어 맞추기 게임이다. 그림까지 재현하려면 GUI 를 만들어야 하는데, 간단하게 횟수제한 없는 퀴즈 게임으로 만들어보자. 먼저 퀴즈로 사용할 words라는 리스트를 만들어주고, 해당 리스트에서 random 라이브러리를 사용하여 임의뢰 하나의 단어만을 quiz라는 변수에 선언하여 사용해 주었다. c_answer 변수는 사용자에게 "_ _ _ _ _"형태로 단어의 길이를 보여주게 되므로, for 문을 통해 quiz의 길이만큼 "_"를 삽입해 주었다. 이제 본격적으로 while문을 통해 사용자에게 계속 내용을 입력받아 비교해보는 코드를 짜주어야 한다. 사용자에게 단어의 길이를 보여주기 위해 for문을 사용하여 c_answer 내용물을 쉼표..
22.12.09 파이썬 코딩 퀴즈#1(나도코딩-레벨2) 오랜만에 유튜버 나도코딩 님의 페이지에 접속해서 과거 영상을 둘러보게 되었다. 그 중에 코딩 퀴즈가 있어서 한번 풀어보게 되었다. 레벨2 퀴즈라서 그런지, 크게 어려운 부분은 없어 보인다. 먼저 names 리스트에 유튜버의 이름을 작성해준 다음, 해당 리스트를 for문을 통해 반복해주면 된다. 이때 open() 을 통해 파일을 'w' 쓰기 형태로 열어주어야, 파일이 없을 경우 자동으로 생성해 준다. write()를 통해 내용을 입력 가능한데, 보기와 같이 줄바꿈을 위해 \n을 사용하였고, 코드 줄 바꿈을 위해 연달아 역슬레시도 사용해 주었다. 총 4개의 text 파일이 생성되었고, 파일을 열어보면 각 xxx 부분에 해당 유튜버의 이름이 삽입되어 있는것을 확인 할 수 있다. 답안 코드를 살펴보니... 왜 ..
파이썬 입문 CodeUp 100문 그동안 너무 조급한 마음으로 달려온것 같다. 그래서 다시 기본 개념을 굳히기 위해 입문자용 문제집들을 살펴보다가, CodeUp 이라는 싸이트를 방문하였다. 이래저래 살펴보았는데, 아무래도 코드를 처음 입문하는 초,중,고 학생들을 대상으로 선생님들이 수업을 진행 하시거나, 학생들이 직접 문제를 풀어볼 수 있는 공간인듯 하였다. 하긴... 시대가 변했으니, 학교에서 이제 프로그래밍 언어도 수업을 하는구나... 나는 문제 - python 기초 100제 로 이동하여, 하나하나 풀어보았다. 너무 기본적인 것들은 패스하고 약간 재미있는 문제들만 남겨두기로 하자. 이 문제가 재미있는 부분은 사용자로부터 입력받은 메세지를 따로 한 문자씩 분리해서 출력하는 건데, 예시에서는 print()문을 사용하였다. 이 경우 단점은..
나 혼자 하는 프로젝트 7탄 - 주식정보 크롤링 사실 주식에 관심이 1도 없는 현대인이다. 왜냐하면 사회초년생때 같이 일하시던 팀장님이 계셨는데, 그분이 주식을 하셨다. 잠깐잠깐 시간이 되면 주식 단타로 용돈도 버시고, 심지어 주식으로 번 돈으로 고가의 아파트도 장만 하셨다. 그런데 그 팀장이 하신 얘기가 "절대 주식으로 돈 벌 생각하지 마세요" 였다. 어짜피 관심도 없는 분야였지만, 주변에 누군가가 그렇게 얘기해주니 더 관심을 끊게 되었다. 웹크롤링을 학습할때 가장 많은 예제로 삼는게 주식정보, 영화정보 이다. 하지만, 영화보다는 돈에 끌리는게 사람 마음일까? 이번에는 네이버의 주식정보 페이지를 크롤링 하는 코드를 학습하고자 한다. 먼저 사용할 pandas와 seleminum 라이브러리를 추가로 설치하여 준다. 당연히 웹브라우저를 python을 통해..
나 혼자 하는 프로젝트 6탄 - 인공지능 스피커 만들기 - 1. 환경설정과 기본 테스트 이번에 해볼 나 혼자 프로젝트는 인공지능 스피커를 만들어볼 계획이다. (물론, 나도코딩 유튜버님의 영상을 참고로...링크는 : https://www.youtube.com/watch?v=WTul6LIjIBA참고) VS CODE에서 TTS(Text To Speech)나 STT(Speech To Text)를 구동하기 위해서는 기본적인 환경 설정이 필요하다. 터미널창에 python -m venv (사용할 이름) 으로 입력해주면 가상의 python 환경이 설정된다. 만약, 위와같이 보안 오류가 생긴다면 다음 링크를 참고하여 해결하자. https://itpro.tistory.com/100 스크립트 보안 오류 PSSecurityException 해결 방법 ReactJS프로젝트를 Visual Studio Code Bu..
나 혼자 하는 프로젝트 6탄 - 인공지능 스피커 만들기 - 2. 뼈대 만들기 이제 본격적으로 인공지능 스피커 코드를 작성해볼 시간이다. 동작을 위해 총 4개의 라이브러리를 사용한다. 동작에 필요한 함수는 총 3개 이다. 먼저, 사용자로부터 음성을 인식받아 텍스트로 전환해주는 listen() === STT 다음 해당 listen()에서 받은 텍스트를 활용하여 대답을 만들어주는 answer() 그리고 해당 answer()를 사용자에게 읽어주는 speak() === TTS 이제 천천히 코드를 짜보자. 먼저 m과 r 이라는 변수를 선언하여 음성을 인식하고, 마이크를 통해 음성정보를 전달받도록 해주었다. 여기서 stop_listening 은 listen_in_background()로 목소리를 항시 감지하며, 사용자로부터 음성입력을 전달받으면 listen 함수가 작동하게 된다. while문..