2025년, 코딩은 선택이 아닌 필수!

2025년 모든 학교에서 코딩이 시작 됩니다. 먼저 준비하는 사람만이 기술을 선도해 갑니다~

강의자료/텍스트기반SW 19

[파이썬] 파이게임 고양이/강아지 객체 여러마리 생성하기

2023.08.17 - [강의자료/텍스트기반SW] - [파이썬] 파이게임 객체 임의의 위치로 이동하기 이전 시간에 만든 프로젝트에서 강아지 객체를 새로 만들어 보고 임의의 위치에서 5마리 정도를 생성하여 임의의 위치로 이동하는 것을 살펴 봅니다. 객체를 만들기 위한 이미지는 파이게임 튜토리얼(https://github.com/formazione/pygame_tutorial)에 있는 이미지를 사용하겠습니다. Dog 객체생성 Dog 객체는 Cat 객체를 그대로 복사하여 이미지 읽어 오는 디렉토리만 변경 했습니다. class Dog(Animal): def __init__(self,location=(0, 0),imgsize=(50,50),walkSpeed=3,jumpSpeed = 5,runSpeed = 7,ch..

[파이썬] 클래스별 파일로 관리하기

https://wondangcom.tistory.com/2623 지난 시간에 살펴 본 main.py 파일에 클래스를 모두 넣어 놓다 보면 소스코드의 덩어리가 커지면서 실행되는 메인 위치도 찾기 어렵고 클래스가 어디서 부터 어디까지인지 살펴 보기가 어려워 집니다. 클래스별로 각각의 파일로 관리하여 좀 더 관리가 편리하도록 변경을 해 보겠습니다. 먼저 다음과 같이 animal.py 파일을 만들어 Animal 클래스만 별도로 빼서 생성을 합니다. - animal.py import pygame class Animal(pygame.sprite.Sprite): def __init__(self, location=(0, 0), imgsize=(100, 100), walkSpeed=1, jumpSpeed=2, runSp..

[파이썬] 파이게임 객체 임의의 위치로 이동하기

2023.08.10 - [강의자료/텍스트기반SW] - [파이썬] 파이게임 객체 상속 이전 시간에 만든 프로젝트에서 고양이는 임의의 위치로 계속 이동시키고 사람은 키보드로 이동하도록 변경을 해 봅니다. 고양이 임의의 위치로 이동 고양이를 임의의 위치로 계속 이동시키기 위해서는 일정시간마다 동서남북의 방향을 변경해 주고 계속 조금씩 이동하도록 하면 됩니다. 따라서 다음과 같이 Cat 클래스에 dirChange() 메서드를 생성하고 몇프레임마다 바꿀지 설정하는 changeFrame 변수를 init 에서 생성해 줍니다. 또한 자신이 몇프레임이나 호출 되었는지를 확인 할 수 있도록 frameCount 변수를 생성합니다. 전역 변수로 방향을 저장할 수 있는 dirList를 생성하여 W,E,N,S를 저장합니다. di..

[파이썬] 파이게임 객체 상속

2023.07.27 - [강의자료/텍스트기반SW] - [파이썬] 파이게임 객체 생성 지난 시간 Player의 객체를 생성해서 이동하는 것 까지 만들어 보았습니다. 이번 시간에는 고양이 객체를 생성해서 Player의 주변을 따라 다니도록 프로그램을 구현해 보겠습니다. 객체를 만들기 위한 이미지는 파이게임 튜토리얼(https://github.com/formazione/pygame_tutorial)에 있는 이미지를 사용하겠습니다. GitHub - formazione/pygame_tutorial Contribute to formazione/pygame_tutorial development by creating an account on GitHub. github.com 그런데 여기서 고양이와 Player의 속성이..

[파이썬] 파이게임 객체 생성

지난 시간에 파이게임 사용법을 살펴 보았습니다. https://wondangcom.tistory.com/2597 오늘은 파이게임에서 객체를 생성하고 키보드를 이용하여 이동하는 방법을 살펴 보도록 하겠습니다. 객체를 만들기 위한 이미지는 파이게임 튜토리얼(https://github.com/formazione/pygame_tutorial)에 있는 이미지를 사용하겠습니다. 이미지를 보면 각 행동에 대한 이미지가 여러개 있는 것을 확인 할 수 있습니다. 여기서 Dead 를 선택한다면 Dead(1) ~ Dead(15) 까지 적당한 시간을 두고 이미지를 변경 한다면 마치 쓰러지는 사람처럼 보일것입니다. 객체생성 1. 파이썬 객체 생성 - 플레이어를 관리할 수 있는 객체를 생성하고 객체를 이용해서 인스턴스를 만드는 ..

[파이썬] 파이게임 사용법

파이게임이란 파이게임(Pygame)은 파이썬 개발자를 위한 게임엔진이다. 강력하고 사용하기 쉽고 오픈소스이다. 파이게임 사용법 살펴 보기 1. 파이게임 설치하기 - 이 프로그램은 파이참을 이용하여 실습을 진행하고 있습니다. - terminal 에서 다음의 명령을 실행합니다. pip install pygame ※ 만약 에러가 난다면 pycharm을 관리자권한으로 실행하여 설치해 봅니다. 2. 파이게임 초기화하기 import pygame #파이게임 초기화하기 pygame.init() 파이게임을 사용하기 위해서는 파이게임을 초기화 해야 한다. 3. 디스플레이 결정하기 # 게임 화면 초기화 하기 screen = pygame.display.set_mode((500,800)) 화면 크기를 set_mode( (넓이,..

파이썬으로 JSON 파일 다루기 및 실행파일 만들기

2023.07.04 - [강의자료/텍스트기반SW] - 파이썬으로 웹 크롤링 하고 바드에게 묻고 답하기 지난 시간에 저희 홈페이지 글을 크롤링 해서 내용을 찾아 바드에게 묻고 답하는 실습을 진행 해 보았는데요~ 그렇다면 티스토리블로그 요약하는 프로그램이라면 URL 을 입력 받아 분석하는 프로그램을 만들면 되겠네요~ 입력을 받아서 만약 exit 가 들어 왔다면 프로그램 종료하고 그렇지 않으면 분석 하도록 프로그램을 수정해 보도록 하겠습니다. while True: url_addr = input("분석할 URL 을 입력하세요.(종료시 exit) : ") if url_addr == 'exit': break # 웹 페이지를 가져온 뒤 BeautifulSoup 객체로 만듦 response = requests.get(..

파이썬으로 웹 크롤링 하고 바드에게 묻고 답하기

지난시간에 바드를 이용하여 질문하고 답변을 받는 방법을 살펴 보았는데요~ 저는 바드를 이용해서 웹페이지의 내용을 읽어서 한줄 또는 두세줄로 요약 받는 프로그램을 만들어 보려고 합니다. 우리가 프로그램을 만들때 알고리즘이 어떻게 진행되는지 살펴 보고 그 것을 만들기 위해서는 어떤 기법들이 필요한지 살펴 봐야 됩니다. 일단 제가 만들려고 하는 프로그램은 다음과 같습니다. 해당 웹페이지 URL을 입력받는다. URL 의 내용을 가져와서 내용만 추출한다. 해당 내용을 바드에게 요약 정리해 달라고 요청한다. 아주 단순한 프로그램이네요 그래서 지난 시간에 2023.06.27 - [강의자료/텍스트기반SW] - 구글 바드 API 파이썬에서 사용하기 에서 바드에 묻고 답하기 기능을 살펴 봤습니다. 오늘은 URL을 이용해서..

구글 바드 API 파이썬에서 사용하기

1. 바드 API 패키지 설치 실습환경은 Pycharm 에서 실습을 진행하였습니다. PyCharm의 terminal 에서 pip install bardapi 를 입력하여 설치합니다. 2. 바드 API 키 가져 오기 구글에서 아직 api key를 제공하고 있지 않기 때문에 쿠키값을 사용합니다. https://bard.google.com/?hl=ko 에 법속하여 F12 키를 눌러서 개발자 창을 엽니다. 다음과 같이 Application -> Storage -> Cookies -> 'https://bard.google.com'의 _Secure-1PSID 에 있는 값을 키값으로 사용합니다. 위의 이미지에서 (1) -> (2) 를 선택 후 (3)의 값이 키값으로 사용하고자 하는 값입니다. bard_api_key ..

별찍기 원리에 대해 알아 봅니다.

저희가 아이들과 공부를 하다 보면 별을 찍는 규칙을 많이 어려워 하더라구요. 별을 찍는 형태는 다음과 같은 형태가 나타납니다. -*****--***---* 이런 경우 프로그램은 다음과 같이 반복문을 구성해 주어야 합니다. 먼저 행이 3행이므로 한행 한행 진행하기 위해서는 3번 반복을 해 주어야 합니다. 다음과 같이1행2행3행이렇게 반복을 해야 되므로 for(int i=1;i