Why are some light switches giving shocks?
Could be static - kinda depends on the nature of the shock/spark. Not uncommon in the winter (dry inside the house) to get a static discharge to the grounded screws - try touching a doorknob or some other metal thing before touching the switch - if the other metal thing has the shock then, and the switch does not, that might be it. If you still get a shock from the switch, move on to:

If it's more than just static, call an electrician ASAP...