I dont know how to make a rect stand on another rect in pygame

You need to change the player's position instead of the block's position and you also need to set the player's y attribute:

self.player_rect.x = round(self.x)
self.player_rect.y = round(self.y)

for tile in self.tile_list:
    if self.player_rect.colliderect(tile[1]):
        self.player_rect.bottom = tile[1].top
        self.y = self.player_rect.y