Reselect faces that was already selected? How can I reselect faces that is already selected? I need to get selected faces, do something else, and then reselect those faces again. I tried this ,but it doesn't work.

import bpy


OBJ = bpy.context.edit_object
DATA = OBJ.data
FACES = DATA.polygons

#Get selected faces
FACES = [f for f in FACES if f.select]

#Deselect to see if selection works.
bpy.ops.mesh.select_all(action='DESELECT')

#Select faces again
for S_FACES in FACES: 
    S_FACES.select = True
For this you can use bmesh:

import bpy
import bmesh


OBJ = bpy.context.edit_object
DATA = OBJ.data
BM = bmesh.from_edit_mesh(DATA)

#Get selected faces
FACES = [f for f in BM.faces if f.select]

#Deselect to see if selection works.
bpy.ops.mesh.select_all(action='DESELECT')

#Select faces again
for S_FACES in FACES:
    S_FACES.select = True

#updates viewport
bmesh.update_edit_mesh(DATA, True)


Hope this helps :)