Knife. Always have one. I traveled alone for years, and I'm small and female. Not having SOMETHING is stupid. I choose a knife because it's legal pretty much everywhere, but I'd like to have a firearm for at home someday.
I have had to defend myself with a weapon before. I have never had to actually use it on someone - usually if you look calm enough that's enough to scare someone off. But I am trained to, and I sure as hell would if I had to.