Seite 1 von 1

Probleme mit pygame.display.update()

Verfasst: Freitag 19. März 2021, 12:23
von Lengeta
Ich habe vor kurzem mit Python angefangen und wollte mich jetzt an Pong versuchen.
Nur irgendwie bekomme ich immer in Zeile 12 (pygame.display.update()) immer einen Syntax Fehler und ich weiß nicht warum.
Gruß Lengeta

Code: Alles auswählen

import pygame
import sys

pygame.init() 

screen = pygame.display.set_mode([1400,800])
clock = pygame.time.Clock()

#Draw
def zeichnen():
	mdl_line = pygame.draw.Rect(screen, (0,0,255), (695,0,10,800), 0)	
	pygame.draw.Rect(screen, (255,255,255,) (x,y,breite,höhe)
	pygame.display.update()
#Spieler
x = 20
y = 360
höhe = 80
breite = 20

#Game loop
game = True
while game
	for event in pygame.event.get()
		if event.type == pygame.QUIT: sis.exit()

#Movement
	spieler = pygame.Rect (x,y,höhe,breite)

	zeichnen()
	clock.tick(60)

Re: Probleme mit pygame.display.update()

Verfasst: Freitag 19. März 2021, 15:52
von MupfSpace
Hallo, das ist die erste Frage die ich überhaupt beantworte, normalerweise stelle ich immer nur Fragen 😅
allerdings hatte ich jetzt Lust bekommen auch mal was zu beantworten :)

Du musst in Zeile 12 noch eine klammer schließen:

Code: Alles auswählen

pygame.draw.Rect(screen, (255,255,255,) (x,y,breite,höhe)) 
das ist aber nicht der einzige Fehler...
in zeile 22 und 23 fehlt der Doppelpunkt:

Code: Alles auswählen

while game:
	for event in pygame.event.get():
		if event.type == pygame.QUIT: sis.exit()
ich hoffe ich konnte dir weiterhelfen :)

Re: Probleme mit pygame.display.update()

Verfasst: Freitag 19. März 2021, 16:00
von Sirius3
@MupfSpace: in Deiner ersten Zeile fehlt auch noch ein Komma.

@Lengeta: beim Programmieren muß man auf jedes Satzzeichen achten.
Eingerückt wird immer mit 4 Leerzeichen pro Ebene, und nicht mit Tabs.
sis ist auch etwas anderes als sys.
Wobei sys.exit eigentlich nicht verwendet werden sollte. Am besten verläßt man einfach die main-Funktion per return, wenn man denn eine hätte. Und Funktionen müssen alles, was sie brauchen, per Argumente bekommen.
Das Flag `game` wird gar nicht benutzt.