I would say yeah, they do. Most people who have multiple snakes have what is called feeding day where they feed all the snakes that day, and over time the snake learns when it is going to get fed and is ready to eat on that specific day.
My snake definitely knows when it's time to eat. He eats every two weeks and as soon that day comes he's ready to eat. Rat or no rat. I can't even try to hold him, change water or anything because he thinks every and anything is food.