12.4. Serialization Normalization
12.4.1. Sequence
Mark,Watney,41
>>> def normalize(value, types=(int, float, str)):
... if value == 'True':
... return True
... if value == 'False':
... return False
... if value == 'None':
... return None
... for typ in types:
... try:
... return typ(value)
... except ValueError:
... continue
>>>
>>>
>>> data = 'Mark,Watney,41'
>>>
>>> values = data.split(',')
>>> result = [normalize(x) for x in values]
>>>
>>> print(result)
['Mark', 'Watney', 41]
12.4.2. Mapping
firstname,lastname,age
Mark,Watney,41
>>> data = """firstname,lastname,age
... Alice,Apricot,25
... """
12.4.3. List of Sequence
firstname,lastname,age
Mark,Watney,41
Melissa,Lewis,40
Rick,Martinez,39
Alex,Vogel,40
Chris,Beck,36
Beth,Johanssen,29
12.4.4. List of Mappings
age,firstname,lastname
41,Mark,Watney
40,Melissa,Lewis
39,Rick,Martinez
40,Alex,Vogel
36,Chris,Beck
29,Beth,Johanssen
12.4.5. List of Instances
age,firstname,lastname
41,Mark,Watney
40,Melissa,Lewis
39,Rick,Martinez
40,Alex,Vogel
36,Chris,Beck
29,Beth,Johanssen