I have always thought that if I am doing a water change, and removing some portion of the water first (which is the only way to do it, I know), that the removed water would flush the inside of the hose out enough so that when I reversed the flow to refill the tank nothing too bad would get pushed back into the tank.
Despite that belief (which could be incorrect, I suppose), I always roll up the hose after a water change in such a way that as little water as possible is left behind. Some still is in there, however. On those very rare occasions that I think my Python might have been contaminated with something, I flush it with very hot tap water and then put the whole thing in the tub with hot water and a generous shot of bleach. I work the bleach water through the length of the hose, and then let it soak for an hour or so. Followed by a thorough flushing and a shot of Prime worked through the whole thing. Some bits of discolored material are always stuck to the inside walls of the hose, but after a hot water/bleach treatment, I figure that stuff is pretty close to sterile!