The likely reason is that the subregion name in the main method has a \n and the subregion name in the dictionary that is associated with the color does not.
The Boolean slides have the likely fix on slide 3.
for count in range(numRegions):
subregion = fin.readline() # read the sub-region name
# subregion name will have a \n
# slice off the \n which is one character
subregion = subregion[:-1]
This is the "outer loop" in your program. Your code may not be identical because you have different variable names, but the idea is the same.