problem with function taking as its argument a number and returns a letter grade python

I am trying to build a function that takes as argument a number and returns a letter. However, for input of anything other than numbers from 0 to 100: the program should treat that as an error, and should print an error message

What I have so far and which does not work

def grade(score):
 if score >= 90 and <= 100:
  return("A")
 elif score >= 80 and < 90:
  return("B")
 elif score >= 70 and < 80:
  return("C")
 elif score >= 60 and < 70:
  return("D")
 elif score >= 50 and < 60:
  return("E")
 elif score< 50:
  return("F")
 else:
  print("Error: Score should be a number between 0.0 and 100.0.")
grade(43)
grade(hey)