Creating an obj with different UVs
Step 1) Create a cube object, create a different cylinder object.

Step 2) Enter edit on the cube and unwrap it as you wish.  Object mode, select the cylinder, unwrap that as well.

Step 3) Still in edit with the cylinder selected, open a UV editor window.  'a' select all vertices.  'g' 'x' '512' to move it 512 pixels in the x axis.  If you have an image open, you will need to use a different number of pixels, equal to the x resolution of your image.

Step 4) Leave edit mode.  Select both the cylinder and the cube and join them (ctrl j).

For your ultimate goal, you migh find a UV Warp modifier useful.  By scaling -1 about the x=1 (UV space, not pixel space) axis, you can achieve something similar to what you want.  (Not necessarily the same, as you are probably translating, not mirroring.)  Once you create this modifier, it can easily be copied between objects using the ctrl-L menu.  Offering this in case this is an easier way to achieve your ultimate goal that scripting is.