S.Lott’s answer has already been accepted, but here’s a code sample for the archives:
def foo_callback(option, opt, value, parser):
setattr(parser.values, option.dest, value.split(','))
parser = OptionParser()
parser.add_option('-f', '--foo',
type="string",
action='callback',
callback=foo_callback)