Code bị TypeError: unsupported operand type(s) for +=: 'int' and 'tuple'

Em mới tập tành tự học code game flappybird. Khi em viết dòng code như này : bird_movement += gravity và chạy thử thì nó báo lỗi TypeError: unsupported operand type(s) for +=: 'int' and 'tuple' . Em mong mn giúp em khắc phục cái này. Em cảm ơn mn

mport pygame,sys
def draw_floor():
    screen.blit(floor,(floor_x_pos,600))
    screen.blit(floor,(floor_x_pos+432,600))
pygame.init()
screen= pygame.display.set_mode((432,768))
clock = pygame.time.Clock()
gravity = 0,25
bird_movement = 0
#chèn bg
bg = pygame.image.load('background-night.png').convert()
bg = pygame.transform.scale2x(bg)
#chèn sàn
floor = pygame.image.load('floor.png').convert()
floor = pygame.transform.scale2x(floor)
floor_x_pos = 0
#tạo chim
bird = pygame.image.load('yellowbird-midflap.png').convert()
bird = pygame.transform.scale2x(bird)
bird_rect = bird.get_rect(center = (100,384))
while True:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            pygame.quit()
            sys.exit()
        if event.type == pygame.KEYDOWN:
            if event.key == pygame.K_SPACE:
                print("chim")
    screen.blit(bg,(0,0))
    bird_movement += gravity
    bird_rect.centery += bird_movement
    screen.blit(bird,bird_rect)
    floor_x_pos -= 1
    draw_floor()
    if floor_x_pos <= -432:
        floor_x_pos =0
    pygame.display.update()        
    clock.tick(120)

Định dạng dấu phẩy thập phân phải là ., không phải , nhé. Python hiểu 0,25 là 1 tuple nên mới xảy ra lỗi trên.

2 Likes

em cam on anh nhieu a

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?