tengo este codigo: import pygame
import sprites
import tilemap

WIDTH = 575
HEIGHT = 608

screen = pygame.display.set_mode((WIDTH, HEIGHT))
pygame.display.set_caption("Demo Platformer")
pygame.display.set_icon(sprites.icon)

running = True
clock = pygame.time.Clock()
FPS = 60

map = tilemap.tilemap

objects = pygame.sprite.Group()

class Pico(pygame.sprite.Sprite):
    def __init__(self):
        pygame.sprite.Sprite.__init__(self)
        self.image = sprites.luk_img[0]
        self.rect = self.image.get_rect()
        self.rect.center = (300, 300)
        self.sx = 0
        self.sy = 0
        self.air = True
        self.frame = 0
        self.frame_timer = 10
        self.groundtimer = 0
        self.facing = 1

    def touch_ground(self):
        self.sy = 0
        self.air = False
        while not self.rect.y >= 500:
            self.rect.y += 1
        self.groundtimer += 1

    def jump(self):
        self.sy = -10

    def update(self):
        self.image = sprites.luk_img[self.frame]

        self.rect.x += self.sx
        self.rect.y += self.sy

        self.sx *= 0.9
        self.sy += 0.5

        self.collide = pygame.sprite.spritecollide(self, objects, False)

        tile = None
        if 0 <= pico.rect.x // 32 < len(map[0]) and 0 <= pico.rect.y // 32 < len(map):
            tile = tilemap.Tile(pico.rect.x // 32, pico.rect.y // 32, map[pico.rect.y // 32][pico.rect.x // 32])
        else:
            self.rect.y = 0

        if tile is not None:
            if self.rect.colliderect(tile.rect):
                if self.rect.bottom > tile.rect.top:
                    self.rect.bottom = tile.rect.top
                    self.sy = 0
                    self.air = False
                elif self.rect.top < tile.rect.bottom:
                    self.rect.top = tile.rect.bottom
                    self.sy = 0
                    self.air = False
                elif self.rect.left < tile.rect.right:
                    self.rect.left = tile.rect.right
                    self.sx = 0
                elif self.rect.right > tile.rect.left:
                    self.rect.right = tile.rect.left
                    self.sx = 0

        if self.air == False:
            if pygame.key.get_pressed()[pygame.K_UP]:
                self.jump()
        else:
            self.sy += 0.5

        if pygame.key.get_pressed()[pygame.K_LEFT]:
            self.sx = self.sx - 0.5
            self.facing = -1
        if pygame.key.get_pressed()[pygame.K_RIGHT]:
            self.sx = self.sx + 0.5
            self.facing = 1

        if self.facing == -1:
            self.image = pygame.transform.flip(self.image, True, False)
        else:
            self.image = sprites.luk_img[self.frame]

        self.animate()

    def animate(self):
        self.frame_timer += 1
        if self.frame_timer >= 10:
            if self.air == True:
                self.frame = 3
            else:
                if pygame.key.get_pressed()[pygame.K_LEFT] or pygame.key.get_pressed()[pygame.K_RIGHT]:
                    self.frame += 1
                    if self.frame >= 3:
                        self.frame = 0
                else:
                    self.frame = 0
            self.frame_timer = 0

pico = Pico()
objects.add(pico)

while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill("white"). quiero que me añadas colision con el tilemap a "Pico"

    if tilemap is not None:
        tilemap.draw_tilemap(screen, map)

    objects.draw(screen)
    objects.update()

    clock.tick(FPS)
    pygame.display.update()