'python evaluation wrapper
:return: None'

def do_python_eval(self):

    annopath = os.path.join(self.data_path, 'Annotations', '{0!s}.xml')
    imageset_file = os.path.join(self.data_path, 'ImageSets', 'Main', (self.image_set + '.txt'))
    annocache = os.path.join(self.cache_path, (self.name + '_annotations.pkl'))
    aps = []
    use_07_metric = (True if (int(self.year) < 2010) else False)
    logger.info(('VOC07    metric?    ' + ('Y' if use_07_metric else 'No')))
    for (cls_ind, cls) in enumerate(self.classes):
        if (cls == '__background__'):
            continue
        filename = self.get_result_file_template().format(cls)
        (rec, prec, ap) = voc_eval(filename, annopath, imageset_file, cls, annocache, ovthresh=0.5, use_07_metric=use_07_metric)
        aps += [ap]
        logger.info('AP    for    {}    =    {:.4f}'.format(cls, ap))
    logger.info('Mean    AP    =    {:.4f}'.format(np.mean(aps)))
