Most dog experts say that the only real limitation to training a dog is communicating to the dog what you want.
We have 4 dogs and 3 cats. Our cats are "inside" cats, as we really prefer them to not end up as "sailcats" on the street outside, nor to end up with parasites, diseases, wounds, etc. from mixing it up with stray cats in the neighborhood. Occasionally, though, one of the cats will bolt for the back door when it's open and run into the backyard where the dogs are. Our dogs will play with the cat when it enters the back yard, but none of the dogs will attempt to hurt the cat at all. Really, it seems like the dogs think it's a big fun game to try and get the cat to go back into the house. Let a stray cat enter the back yard, though, and it's another story altogether. The dogs know which cats are part of our family, and which are not.
If the dog you're getting is a puppy, it's a simple matter of taking the time to pay attention to how the puppy reacts to the snakes, and training the puppy accordingly. Discourage unacceptable behavior (such as aggressively lunging at the snakes through the enclosure glass, etc) with a sharp "NO". Encourage proper reactions with plenty of affection and praise. Most dogs are VERY "approval" oriented, and respond well to consistent training.
That said, though, pay attention to the type of dog you're getting. Different breeds have been developed for different purposes, and those purposes are manifested as very strong "instincts" in the dogs. I've watched Australian Shepherds that have NEVER had a day of "herding training" in their lives instinctively perform herding moves on other animals. Hunting dogs, correspondingly, will exhibit a higher degree of that trait even without training, and trying to "train out" that trait is a long, uphill battle. It's been bred in over centuries, so it's not easily subverted by training.