def mailman_remove(contact, listname=None, userack=None, admin_notify=None):
    'Remove a Satchmo contact from a Mailman mailing list\n\n    Parameters:\n        - `contact`: A Satchmo contact\n        - `listname`: the Mailman listname, defaulting to whatever you have set in settings.NEWSLETTER_NAME\n        - `userack`: True or False, whether to notify the user, defaulting to the list default\n        - `admin_notify`: True or False, defaulting to the list default\n    '
    (mm, listname) = _get_maillist(listname)
    ((print >> sys.stderr), ('mailman removing %s from %s' % (contact.email, listname)))
    if mm.isMember(contact.email):
        try:
            mm.Lock()
            mm.ApprovedDeleteMember(contact.email, 'satchmo.newsletter', admin_notify, userack)
            mm.Save()
        finally:
            mm.Unlock()
Remove a Satchmo contact from a Mailman mailing list

Parameters:
    - `contact`: A Satchmo contact
    - `listname`: the Mailman listname, defaulting to whatever you have set in settings.NEWSLETTER_NAME
    - `userack`: True or False, whether to notify the user, defaulting to the list default
    - `admin_notify`: True or False, defaulting to the list default
def mailman_remove(contact, listname=None, userack=None, admin_notify=None):
    'Remove a Satchmo contact from a Mailman mailing list\n\n    Parameters:\n        - `contact`: A Satchmo contact\n        - `listname`: the Mailman listname, defaulting to whatever you have set in settings.NEWSLETTER_NAME\n        - `userack`: True or False, whether to notify the user, defaulting to the list default\n        - `admin_notify`: True or False, defaulting to the list default\n    '
    (mm, listname) = _get_maillist(listname)
    ((print >> sys.stderr), ('mailman removing %s from %s' % (contact.email, listname)))
    if mm.isMember(contact.email):
        try:
            mm.Lock()
            mm.ApprovedDeleteMember(contact.email, 'satchmo.newsletter', admin_notify, userack)
            mm.Save()
        finally:
            mm.Unlock()