목록Python (35)
노는게 제일 좋습니다.
원 코드 출처 http://inventwithpython.com/collisionDetection.py 흰색이 캐릭터. 초록색이 상자 파이게임 윈도우 내에서 마우스로 이벤트를 주거나, 키보드를 입력하면 event.get()으로 리스트가 반환되고그 때마다 캐릭터가 움직이는 코드가 실행된다. 캐릭터와 상자가 충돌하면 상자가 사라진다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610..
코드 출처 http://inventwithpython.com/http://inventwithpython.com/animation.py pygame 에서의 애니메이션 예제로, 게임루프가 어떻게 돌아가는지 알 수 있는것 같다.별 내용은 없음. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889import pygameimport sysimport timefrom pygame.locals import * pygame.init() WINDOWWIDTH = 400WI..
pygame을 설치한다고 고생좀 했다. 특정한 모듈을 찾을 수 없네, 제대로 된 실행파일이 아니네 오류를 죄다 겪어봤다. 해결방법은 단순하다. 파이썬과 pygame모두 32bit로 설치하고, 둘의 버전을 일치시켜야 한다.예를들어, pygame이 파이썬3.4를 대상으로 하면, 파이썬은 3.4.x버전으로 설치해야 한다. 책을 따라 63라인을 타이핑했다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546import pygameimport sysfrom pygame.locals import * pygame.init() windowSurface = pygame.display.set_mode((500,400), 0,..
심심하면 가끔 하던 야구게임과 유사하다. 자리와 숫자 모두 맞으면 스트라이크, 숫자만 맞고 자리가 틀리면 볼..이런식으로 하던 게임. 이 게임에서는 세 자리의 답을 제시하며, 스트라이크는 Fermi와, 볼은 Pico와 대응된다. 이정도면 파이썬 연습은 대강 되었으니 다음부터는 Pygame엔진을 사용하는걸로. 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111..
틱택도 다음으로 베이글 게임(세자리 숫자 맞추기)을 만들다가 힘들어서 틱택토를 다시 꺼내서 컴퓨터와 놀았는데..하다보니 이상한 점이 발견되었다. 분명 컴퓨터가 이길 수 있는데도, 이길 수 있는 자리에 돌을 놓지 않고.반대로 내가 돌을 놓으면 이길 수 있는 자리를 컴퓨터가 막지 않았다.내가 경우의 수를 덜 계산한 것이 문제였다. 인공지능이 자신이 돌을 놓을 위치를 고를 때, 아래 순서의 과정을 거친다.1이 참이라면 2는 생략한다. 1. 내가 놓아서 이길 수 있는 자리가 있나? - - - [참] - - -> 그 자리를 놓을 자리 리스트에 등록ll[ 거 짓 ]ll▼2. 상대방이 놓으면 이기는 자리가 있나? - - - [참] - - -> 그 자리를 놓을 자리 리스트에 등록 여기서 1, 2 는 각자 이런 내용을 ..
그냥 만들었다. 코드가 더러운 것은 내 실력탓이다. 실제로 긴 코드는 아니고, 설명이 많아서 길게 보이는 것이다. 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471..
알 수 있는 내용 in연산자, 문자열 메소드, 리스트 메소드, range(), 다중 대입 어제는 무작정 갖고 있는 지식만으로 '완성'만을 목표로 했다면, 오늘은 찬찬히 예제코드를 살펴보면서 비교하고 배우기로 했다. 책에 있는 예제코드에 딕셔너리로 단어세트 고르기를 추가한 코드이다. 훨씬 간결하고 한 눈에 들어온다. 나는 전역변수를 만들어 여러 함수에서 그 변수에 접근했다면, 이 코드는 매개변수로 넘기고 리턴하는 방식을 주로 택한다. 플래시 스크립트를 마구잡이로 짜던 습관이 나와서 전역변수로 편하게 굴렸었다. 생각없는 전역변수 접근은 줄여나가는걸로. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 3..
유명한 게임인 행맨을 만들어보았다. 책의 예제로 나와있는건데, 일부러 예제를 안보고 알고있는 지식과 검색만으로 코딩을 해보았다. 아마 책에 비하면 굉장히 괴랄한 코드일 것 같은데.. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 ..