Pyudev - las llamadas funcionan dos veces

Tengo un problema con el uso de la biblioteca pyudev.

Quiero tener un programa que detecte el enchufe USB e imprima algo en la consola. Aquí está el código que tengo:

import glib
import os

import sys

from pyudev import Context, Monitor

from pyudev.glib import GUDevMonitorObserver as MonitorObserver
def device_event(observer, device):
  print 'yep'

context = Context()
monitor = Monitor.from_netlink(context)
monitor.filter_by(subsystem='usb')
observer = MonitorObserver(monitor)
observer.connect('device-added', device_event)
monitor.start()
glib.MainLoop().run()

El problema es que cuando ejecuto el script parece que la función device_event se llama dos veces. La salida que obtengo cuando conecto un dispositivo USB es:

yep
yep

Busqué por todas partes pero no pude encontrar una respuesta Por favor ayuda Gracias

Respuestas a la pregunta(1)

Su respuesta a la pregunta