Originally (2.49) we were testing for ob->game_flag to see if the object is dynamic. That could work here (it would require a new rna prop for the object (a read-only is_dynamic) or similar. However using ob.game.physics_type is more explicit, therefore may be more interesting. I have no strong opinions on that...