I have quite a few weaknesses. More importantly, I have no problems admitting that I have them. I remember names and faces very poorly; while I'm a decent runner, I'm very poor at running on trails; I judge people rather quickly based on superficial evidence; I'm not good at putting stuff away in its place; I'm good at organizing but poor at writing things down; and I could keep going on and on, but it would serve no purpose, really. To me, the most important thing is to be aware of my weaknesses so that I can try to compensate for them in other ways.
For example, even though I judge others quickly, I also have developed the habit of recognizing my judgments and then asking myself if that judgment is justified. So almost as soon as I find myself judging someone else, I also find myself thinking, "But wait a minute. . . is that actually true or justified?" While I have a hard time writing things down, I also have developed the habit of having index cards and pens with me very often, which allows me to write things down more often than I would otherwise. It's not a perfect solution, but I've tried others and it's what works the best.
Knowing my weaknesses helps me to know when I'm going to have to apply extra effort, such as in my teaching--keeping track of grades is hard for me, but setting up a system in which it will be easier is a rather simple thing for me to do--a bit time-consuming, but not difficult. Because I have a hard time putting stuff away, I try to have at least one or two places where I can drop everything and then later sort through things.
These are simply ways to compensate for some of my weaknesses. These "weaknesses," of course, are more a result of societal norms than they are truly weaknesses--in a different culture, they might be considered very normal traits. Being a poor trail runner only affects me if I run trails; otherwise, it's a completely unimportant element of who I am. But knowing this weakness helps me to decide not to run with some friends who are good at it when they're going out for a long trail run--I would slow them down and probably be miserable myself if I were to go with them.
There's absolutely no problem with having weaknesses--we all have many of them, and that's fine. Problems arise when we ignore or deny them, when we pretend we don't have them or we don't admit to them and commit ourselves to do something in an area of weakness. Then our stress levels rise and things become less enjoyable to do, and that's never a good combination.
What are your weaknesses? If you know them, you can compensate for them or simply avoid having to do things in those areas. And if you're able to do that, you can concentrate on your strengths and get even better at those things--and that's always something very positive.