• Assert and check are not the same

Question related to mission Army Units

 

To create the string for the introduce() function, I have accessed the name of each class within the class itself as follows:

str(self.__class__)[17:-2].lower()

This passes the asserts. However, it fails the checks, because in front of the class name a dot appears (just one '.'). When I change the starting index from 17 to 18, my code passes the checks and the exercise is complete. However, then it cannot complete the asserts.

I have also used my local python 3.7 installation on my PC to check, and it shows that starting index 17 is correct. Also, in "The Warlords" exercise, a starting index of 17 was also correct.

So it seems to me that something is wrong specifically with the check of this exercise.