Stones picked up the injury in training ahead of Manchester City’s opening UEFA Champions League game against Shakhtar Donetsk on Wednesday.
The 25-year-old had just returned from a similar injury that kept him out of City’s previous three Premier League games.
Stones started in the defence alongside Nicolas Otamendi as the champions succumbed to a 3-2 loss to newly-promoted Norwich City on Saturday.
The former Everton defender joins Aymeric Laporte on the treatment table after the Frenchman was ruled out of action for six months with a knee injury.
“John Stones is injured,” Guardiola said at his news conference previewing Wednesday’s clash against the Ukrainian champions.
“He got injured this morning in training. He made a pass and got injured.”
Asked how long Stones would be sidelined for, Guardiola said: “Months - four or five or six weeks. It's a muscle problem.”
Pep Guardiola has been left with just one fit recognised senior centre-back in their ranks in the shape of Nicolas Otamendi after the club decided not to replace the departed Vincent Kompany in the summer.
Guardiola will have to improvise to solve City’s defensive headache with defensive midfielder Fernandinho as well as youth team products Eric Garcia and Taylor Harwood-Bellis expected to fill in at the back.
"[It is a] Big challenge. For me as a manager, it's an incredible challenge: just one central defender in Nico," he added.
"But I believe a lot. People don't know the spirit and resolve to solve this problem. The players are going to come back with Fernandinho, Garcia, Harwood-Bellis.
"It's happened, but what we are not going to do is complain. If they are not able, they are not able. We have to have 11 players on the pitch, and I like it, finding a solution."