# Argument works in the python console but not in a loop?

I can type

bpy.data.objects['hair02'].parent.select

into the the console and get a return but when it is in this loop it sends back an error. please see image below. I must be calling it improperly but not sure why. any help is appreciated.

You're testing all of the objects that were selected when the script reached the line fbxs = [ ob for ob in bpy.context.selected_objects] One of these objects has no parent, so when the line ob.parent.select = True is run, Blender tries to find a parent and raises an error when it doesn't find one.
if (ob.parent):