Add material and apply Diffuse color via Python This may be another simple question but I can't seem to find a straight answer.

I am procedurally generating figures and as part of the last step I want to color the figure red. 

If I manually add a new material to the figure I can change the color with bpy.context.object.active_material.diffuse_color = (1, 0, 0)

But I need to automate this step such that the program automatically add a new material and then changes the color. I've tried the following but it doesn't seem to work: 

bpy.ops.material.new()
bpy.context.object.active_material.diffuse_color = (1, 0, 0)


It seems the problematic step is adding a new material. Any help would be greatly appreciated.
Actually, I figured it out shortly after posting the question.

Instead of using:

bpy.ops.material.new()


I needed to use:

bpy.data.materials.new(name="MaterialName")


So the final solution was:

activeObject = bpy.context.active_object #Set active object to variable
mat = bpy.data.materials.new(name="MaterialName") #set new material to variable
activeObject.data.materials.append(mat) #add the material to the object
bpy.context.object.active_material.diffuse_color = (1, 0, 0) #change color