bpy text attributes: how to set, how to discover
Text objects are Curves with the subclass TextCurve. To create a text object(without using bpy.ops):

font = bpy.data.curves.new('myFont', 'FONT') #this is the 'data' of the text.data in your code
text = bpy.data.objects.new('myText', font)
bpy.context.scene.objects.link(text)
bpy.context.scene.update() #in your case do this outside the loop


To set the extrude:

font.extrude = 0.1