Obviously my answer is a matter of personal opinion, but here it is:
Every situation is different, but I believe that anyone who pulls a gun or a knife on you probably plans to use it. You can’t trust that if you give the person what they want -- your money or your body, usually -- that they’ll be satisfied and leave you alone.
Consider this from your attacker's point of view: You can probably identify them unless they thought to wear a mask, and this is probably not their first offense.
Many criminals are also under the influence of drugs or alcohol and not thinking rationally. Why would you trust this person when they say "If you do what I ask I won't hurt you?"
Think of the common TV show plot: the criminal promises to release you if you just cooperate, then takes you to a secluded place and kills you. You can’t let it get that far. Fight and try and get away before you’re in a situation that you can’t get away from.
When we practice defense against street weapons in class on Wednesdays and Saturdays, we practice it to give students the instincts and confidence to defend themselves in these types of situations.