Time delay when selecting objects in a python script!
Modal timer operator

Would suggest not using time.sleep and use a modal timer operator instead.' Example using modal timer operator template.

import bpy

class ModalTimerOperator(bpy.types.Operator):
    """Operator which runs its self from a timer"""
    bl_idname = "wm.modal_timer_operator"
    bl_label = "Modal Timer Operator"

    _timer = None
    ob_index = 0

    def modal(self, context, event):
        scene = context.scene
        if self.ob_index &gt;= len(scene.objects):
            self.cancel(context)
            return {'CANCELLED'}

        if event.type == 'TIMER':
            scene.objects[self.ob_index].select = True
            self.ob_index += 1

        return {'PASS_THROUGH'}

    def execute(self, context):
        wm = context.window_manager
        self._timer = wm.event_timer_add(1, context.window)
        wm.modal_handler_add(self)
        return {'RUNNING_MODAL'}

    def cancel(self, context):
        wm = context.window_manager
        wm.event_timer_remove(self._timer)

def register():
    bpy.utils.register_class(ModalTimerOperator)

def unregister():
    bpy.utils.unregister_class(ModalTimerOperator)

if __name__ == "__main__":
    register()

    # test call
    bpy.ops.wm.modal_timer_operator()