Why does python need you to define a properties's existence?
Although I think this is more a Python specific question, maybe an answer is still useful for style.

It is possible to use the all keyword

import bge
from bge import logic

def property(cont):    
    own = cont.owner

    speed = own.get('Speed')
    level = own.get('Recoil_Level')
    size = own.get('Proportion_Size')

    if not all([speed, level, size]):
        print('No properties found in Weapon_Recoil_Level_Determiner')
        return

    own['Recoil_Level'] = speed / size
    print("recoil level: ", own['Recoil_Level'])    

cont = logic.getCurrentController()      
property(cont)


.get() is useful because it will return None if the key isn't present.