python 코드 에러, 이거 왜 에러 뜨나요?(간단)

python 코드 에러, 이거 왜 에러 뜨나요?(간단)

작성일 2024.04.28댓글 1건
    게시물 수정 , 삭제는 로그인 필요

import pygame
import sys

pygame.init()

w = 1600
h = int(w * (9/16))

screen = pygame.display.set_mode((w, h))

clock = pygame.time.Clock()

ingame = True

keys = [0, 0, 0, 0]
keyset = [0, 0, 0, 0]

maxframe = 60

while ingame:
    fps = clock.get_fps()

    if fps == 0:
        fps = maxframe

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            ingame = False  # Exiting the ingame loop if the window is closed
        elif event.type == pygame.KEYDOWN:
            if event.key == pygame.K_d:
                keyset[0] = 1
            elif event.key == pygame.K_f:
                keyset[1] = 1
            elif event.key == pygame.K_j:
                keyset[2] = 1
            elif event.key == pygame.K_k:
                keyset[3] = 1
        elif event.type == pygame.KEYUP:
            if event.key == pygame.K_d:
                keyset[0] = 0
            elif event.key == pygame.K_f:
                keyset[1] = 0
            elif event.key == pygame.K_j:
                keyset[2] = 0
            elif event.key == pygame.K_k:
                keyset[3] = 0

    screen.fill((0, 0, 0))

    keys[0] += (keyset[0] - keys[0]) / (2 * (maxframe / fps))
    keys[1] += (keyset[1] - keys[1]) / (2 * (maxframe / fps))
    keys[2] += (keyset[2] - keys[2]) / (2 * (maxframe / fps))
    keys[3] += (keyset[3] - keys[3]) / (2 * (maxframe / fps))

    pygame.draw.rect(screen, (0, 0, 0), (w / 2 - w / 8, -int(w / 100), w / 4, h + int(w / 50)))  # Gear background

    for i in range(7):
        i += 1
        pygame.draw.rect(screen, (200 - ((200 / 7) * i), 200 - ((200 / 7) * i), 200 - ((200 / 7) * i)), (w / 2 - w / 8 + w / 32 - (w / 32) * keys[0], (h / 12) * 9 - (h / 30) * keys[0] * i, w / 16 * keys[0], (h / 35) / i))
    for i in range(7):
        i += 1
        pygame.draw.rect(screen, (200 - ((200 / 7) * i), 200 - ((200 / 7) * i), 200 - ((200 / 7) * i)), (w / 2 - w / 16 + w / 32 - (w / 32) * keys[1], (h / 12) * 9 - (h / 30) * keys[1] * i, w / 16 * keys[1], (h / 35) / i))
    for i in range(7):
        i += 1
        pygame.draw.rect(screen, (200 - ((200 / 7) * i), 200 - ((200 / 7) * i), 200 - ((200 / 7) * i)), (w / 2 + w / 32 - (w / 32) * keys[2], (h / 12) * 9 - (h / 30) * keys[2], (h / 35) / i))
    for i in range(7):
        i += 1
        pygame.draw.rect(screen, (200 - ((200 / 7) * i), 200 - ((200 / 7) * i), 200 - ((200 / 7) * i)), (w / 2 - w / 8 + w / 32 - (w / 32) * keys[3], (h / 12) * 9 - (h / 30) * keys[3] * i, w / 16 * keys[3], (h / 35) / i))

    pygame.draw.rect(screen, (255, 255, 255), (w / 2 - w / 8, -int(w / 100), w / 4, h + int(w / 50)), int(w / 100))  # Gear line

    pygame.display.flip()

pygame.quit()
sys.exit()

이거 왜 'rect argument is invalid' 라고 에러 뜨나요?


#python 코드 #python 코드 실행 #python 코드 암호화 #python 코드 줄바꿈 #python 코드 실행 사이트 #python 코드 실행 시간 측정 #python 코드 실행 시간 #python 코드 난독화 #python 코드 종료 #python 코드 정리

profile_image 익명 작성일 -

에러가 많은 것 같은데 원래 의도하시는 바가 뭔지는 모르겠군요..

우선 질문 주신 부분만 놓고 보자면 rect 함수의 2번쨰 파라미터는 색상이 입력되어야 하는데요.

색상 튜플이 모두 정수값이어야 합니다.

실수가 입력되어 발생하는 문제입니다.

그러므로 코드를 아래와 같이 바꿔주셔야 합니다.

for i in range(7): pygame.draw.rect(screen, (int(200 - ((200 / 7) * i)), int(200 - ((200 / 7) * i)), int(200 - ((200 / 7) * i))), :

중간에 'i += 1' 코드는 반복문이 i 값을 처리해주기 때문에 필요없습니다.

파이썬 input함수 에러 뭐죠?

... (2)/Documents/코드/VSCode/Python/Pyhon_Playground.... name 'PYTHON' is not defined 이거 왜 오류가... 파이썬 버전은 3.10.2입니다 input 에러...

윈도우 Rundll관련 숫자.txt 에러 메세지

... 뜨는 에러메세지입니다. 정말 매번 확인누르는거 귀찮아 죽겠네요. 이거 도대체 뜨나요... Rundll이면 악성코드 지우고 남은 찌꺼기 레지스트리를 못지워서 그런 것...

파이썬 에러 질문

... 스튜디오 코드에 print ("안녕하세요")만... 이건 왜그런건가요? Visual Studio Code는 여러가지... Run > Add Configuration에 들어가서 먼저 Python이 있는지 보셔야...

컴퓨터에 에러가뜨는데..

... 그리고 이거어떻게하면 안뜨나요? 내공50검 블루 스크린의 원인은 광범위 하기... 오류 코드에는 하드의 케이블에 문제가 있는 듯 보입니다. 하드의 케이블을 새걸로 교체...