Push ups have passed the test of time as one of the most effective strength and conditioning moves. However, once you have the regular push up mastered, the progression from two arms to one arm is a big step. The video below has some good progressions for working up toward a strict one arm push up.
The first move allows you to keep the wide lateral base of a normal push up while allowing you to push through the straight arm. This variation can be progressed by simply using less fingers. You could potentially start with your entire hand flat, remove your thumb and palm, and then remove fingers one at a time until you have progressed to using only your pinky finger.
The second variation places a much greater emphasis on core stability, preventing your body from rotating and tipping over. The straight arm comes in front of you, keeping a narrow base. If this is too hard simply angle your straight arm out to the side slightly (a 45 degree angle to start) and work your way inward until the straight (levering) arm is directly in front of you with only fingertips.
Not only will you get a great core stability drill from this, but you will also train the horizontal pushing strength extensively.
All of the above variations can be loaded using a weight vest or chains.
Try it out and let me know how it works.