The reason Snape made the revelation so openly at the end of the book was that a) he was too pissed off to care, and b) he probably realized that Lupin's immediate usefulness ended when Sirius' threat ended, and Dumbledore would no longer go out of his way to protect him.
Don't forget c) Lupin had just put every student at risk by transforming without the Wolfsbane in him.
Snape revealed Lupin's secret out of 2/3 spite and 1/3 actual concern for his students, in my opinion. He is a bastard, but he doesn't let his students get hurt -- from dispelling Neville's cauldron disasters to having Deflating Draught on hand when Harry et al. splattered the Swelling Solution around (in CoS, when they needed to get boomslang skin), Snape actually is very conscientious about the students' safety.
no subject
Don't forget c) Lupin had just put every student at risk by transforming without the Wolfsbane in him.
Snape revealed Lupin's secret out of 2/3 spite and 1/3 actual concern for his students, in my opinion. He is a bastard, but he doesn't let his students get hurt -- from dispelling Neville's cauldron disasters to having Deflating Draught on hand when Harry et al. splattered the Swelling Solution around (in CoS, when they needed to get boomslang skin), Snape actually is very conscientious about the students' safety.