У вас есть некоторые ошибки здесь.
class tests():
def __init__(self,grade):
self.grade = grade
test_list = []
for x in range(1,6):
test_object = tests(x)
test_list.append(test_object)
list_a = [5,3,2,1,4]
# THIS LINE BELOW IS THE PROBLEM
for x in [test_list]:
# in this line below X = test_list and indeed test_list.grade doesn't make sense.
test_list.append(sorted(x.grade,key=list_a.index))
print (test_list[1].grade)