The following sets the face texture of face 0
for the active object:
import bpy
obj = bpy.context.object
img = bpy.data.images.load("//example.png")
obj.data.uv_textures.active.data[0].image = img
# To make renderable:
mat = bpy.data.materials.new("Example")
mat.use_face_texture = True
obj.data.materials.append(mat)
For cycles see: Different image textures for one material (Cycles)Different image textures for one material (Cycles).