According to a popular space exploration web site, 355 individuals few in a total of 833 crew slots in the Space Shuttle program. That's an average of about 2.5 flights per astronaut, though many only flew once; apparently seven times is the most anyone flew the shuttle (here and here).
As I understand it, these people trained for a mission for years. It seems like it would be more efficient to re-use crew members (perhaps not mission specialists, but pilots and commanders?) rather than always having to retrain people for the job. Why did NASA apparently prefer to train new personnel rather than to have more astronauts make several flights?
I'm writing this answer as a community wiki. The reasons are manyfold; feel free to add more.
@Digger notes that NASA requires Commanders to have previous experience in space. It is therefore important to have a pipeline of astronauts.
@OrganicMarble points out that having a diverse astronuat corps was good for publicity and a good public relations move. The shuttle program had a lot of "firsts" for women, races, ethnicities, states or countries of origin, and faiths. It helps people identify with and support the program.
Along a similar vein, the U.S. had agreements with many other countries to send some of their citizens into space. Often this was the result of another country funding and building equipment or a payload. For example, Canada supplied the shuttle's robotic arm, and as a result was able to fly several astronauts.
Often the "Payload Specialist" positions involved something specific to just one mission. It may have been a researcher performing their own experiment, or an engineer from a contractor operating a piece of their own equipment, or a teacher performing lessons in space.
In a few cases, politicians actually lobbied their way onto astronaut crews.
@Hennes notes that spreading missions among many astronauts may reduce a particular astronaut's exposure to radiation. However, Shuttle missions were much shorter than most space station expeditions, so it might not be an entirely effective strategy.
Training for and flying a shuttle mission was a big strain on crew members and their families. Almost 4% of shuttle astronauts lost their lives; signing up for more than a couple of missions might start to feel like playing Russian roulette.