Select vertices, which are affected by a shape key
I think a shape key stores the coordinates of any vertex of the mesh, regardless of whether the position has been changed or not. So it seems as if the only way to select vertices affected by the shape key is to individually compare whether the position of the vertices is the same for different shape keys.

import bpy
tolerance = 1e-5
obj = bpy.context.active_object
shape_keys = obj.data.shape_keys.key_blocks
sk1_data = shape_keys['Key 1'].data
skb_data = shape_keys['Basis'].data

bpy.ops.object.mode_set(mode="EDIT")
bpy.ops.mesh.select_all(action="DESELECT")
bpy.ops.mesh.select_mode(type="VERT")
bpy.ops.object.mode_set(mode="OBJECT")

for i, (x, y) in enumerate(zip(sk1_data, skb_data)):
    if (x.co - y.co).length &gt; tolerance:
        obj.data.vertices[i].select = True

bpy.ops.object.mode_set(mode="EDIT")


EDIT: As per batFINGER's suggestion, replaced comparison based on equality with a tolerance based approach.