Select a particular face with Python in Blender 2.65

Hi, I’m new at Python, but I need to implement a small script that should search for faces with more than 4 vertices in my blender file!
Actually i have a script that say me which object has these faces, but I would like to find a way to understand which are these faces!

The script i have is this:

import bpy

print("----- SCRIPT -----")
        
for ob in bpy.data.objects:
    if ob.type == "MESH":
        m = ob.data
        faces = []
        sum = 0
        for face in m.polygons:
            verts_on_face = face.vertices[:] 
            if len(verts_on_face) > 4:
                sum = sum + 1
        if sum != 0:
            print (ob.name)
            print(sum) 

Can you help me???
I thought to this solution, but I’m not able to implement it:

<<
When the script finds a face with more than 4 vertices, it should select this face and then, by “break” , it should exit
from for!
>>
How can I select a single face in Blender 2.65?

Thank you in advance

Hey, I added some functuality.
Run in object mode. It finds the faces with more than 4 vertices in one object, selects them and enters the edit mode of this object. If you remove the break, all objects with ngons are selected and it enters the edit mode of the last one found.

import bpy

print("----- SCRIPT -----")
if bpy.context.mode == 'OBJECT': #necessary for correct selection
    bpy.context.tool_settings.mesh_select_mode=(False,False,True) #optional   
    bpy.ops.object.select_all(action='DESELECT')     
    for ob in bpy.data.objects:
        if ob.type == "MESH":
            ob.select = False
            m = ob.data
            faces = []
            for face in m.polygons:
                face.select = False
                verts_on_face = face.vertices[:] 
                if len(verts_on_face) &gt; 4:
                    face.select = True
                    faces.append(face.index)                   
            if len(faces) &gt; 0:
                ob.select = True
                print(ob.name)                
                print(faces)
                bpy.context.scene.objects.active = ob                  
                break #remove for multiple objects
    bpy.ops.object.mode_set(mode = 'EDIT')

Thank you very very much!!!
I have to correct a lot of models and with this small script you are simplifying the work!!!
Thank you again!!! ;-)))

you can have that with less effort and faster since there’s a C operator:

# As long as we don't have an "Extend selection" option, clear previous selection first
bpy.ops.mesh.select_all(action='DESELECT')
bpy.ops.mesh.select_face_by_sides(number=4, type='GREATER')

for face in bpy.context.object.data.polygons:
    if face.select:
        print(face.index) # could do something here

Also checkout my utility addon: http://wiki.blender.org/index.php?title=Extensions:2.6/Py/Scripts/Mesh/Face%20Info%20Select