On Thu, Dec 25, 2008 at 4:16 PM, J. Clifford Dyer <[email protected]> wrote:
<snip>
> and so forth. Then your if/else chain can be pulled out to the place where
> you instantiate each field:
>
> if data_type=='address':
> field=AddressDataField(data)
> elif data_type=='due_date':
> field=DueDateDataField(data)
> else:
> field = DataField(data)
>
And then you use a dictionary of data_type to class to get rid of the
if-else chain altogether:
type2klass = {'address' : AddressDataField, 'due_date' : DueDateDataField} #etc
Klass = type2klass.get(data_type, DataField) #use DataField as fallback default
field = Klass(data)
Merry Christmas,
Chris
--
Follow the path of the Iguana...
http://rebertia.com
--
http://mail.python.org/mailman/listinfo/python-list