I format my card every time I stick it in my camera and start a shoot.
I do this for a couple of reasons.
First, it means every time I start a shoot, I don't accidentally leave the previous shoot on it (and it also means I don't delete it until I start the next shoot, by which time those images are safely on various backup disks; gives me an emergency backup on the card until I'm sure I've got multiple copies elsewhere).
Second, I use multiple camera bodies, and I know people who've had corruption issues with cards formatted by the computer (which I never do) or by one body and used in another because the bodies interact with the card slightly differently. By formatting every time, I know the formatting is what the camera wants and is expecting.
Third, formatting at the start of the shoot will (or should!) catch a card that is starting to fail. At the least, it'll catch some early failure modes in the card -- and in two cases for me so far, it has. So if the card hits an error during format, I know to immediately retire it. I'd rather find out I have a card error at the START of the shoot that midway into it, or worse, when I'm trying to read the images out later.
Note: any time I get a card error, I retire that card. Cards are cheap. Dead cards that eat my only copy of an image is expensive. And formatting a card every time means that every time I shoot gives me a blank slate in a known state that hasn't reported an error. Which means many fewer potential problems later. And FWIW, I basically never run into corrupted cards, lost images or problems during a shoot or during a post-shoot import.
Even if it means the card will wear out sooner, I don't care. I want reliable cards, not ancient ones. I'll happily replace them rather than try to recover images from them....