[Python-Dev] Enums and data retrieval
Ethan Furman
ethan at stoneleaf.us
Mon Apr 29 09:13:53 CEST 2013
[starting new thread to not pollute the summary thread]
On 04/28/2013 11:54 PM, Antoine Pitrou wrote:> On Sun, 28 Apr 2013 17:29:35 -0700
> Ethan Furman <ethan at stoneleaf.us> wrote:
>>
>> Not only is this inconsistent with the rest of Python*, but it's going to be a PITA for data storage/retrieval:
>>
>> datastore = dbf.Table('storage.dbf', 'event_name C(50); date D; season SEASON')
>>
>> def retrieve_record(...):
>> result = []
>> for field_type, field_data in record:
>> result.append(field_type(field_data))
>
> I've never seen any kind of "data retrieval" which works like that.
> Would you care to explain us the context?
The more specific context would be my dbf package, which works with dBase III, Clipper, and Foxpro tables. When the
fields of a record are requested they are transformed into Python data types, with code that looks pretty much like that
retrieve_record snippet (w/o all the error checks, etc.). And no, it doesn't support enumerations (yet).
A more general context would be anywhere that you need to convert the integer offset of an enum item back into the enum
item itself; you may have gotten the integer offset from a postgres database, or an RPC call, and it seems to me the
natural way get the enum item from that is with `EnumClass(offset)`.
--
~Ethan~
More information about the Python-Dev
mailing list