Zenit opened the door for their three-point advantage to be erased when suffering a shock 2-0 home defeat to Rostov on Friday.
First-half strikes from Vitaliy Djakov and Timofey Kalachev put the visitors in the ascendancy at the Petrovsky Stadium and the shell-shocked hosts could not muster a reply.
Lokomotiv duly snapped up their opportunity to go level on points at the top of the division thanks to a Dame N'Doye strike five minutes after the hour mark.
Leonid Kuchuk's men are now only in second due to their head-to-head record with Zenit. The team from the Russian capital have won, drawn and lost exactly the same number of games as the leaders and share the same goal difference.
Spartak Moscow missed out on the chance to join the top two on 36 points as they fell to a 1-0 defeat at CSKA Moscow.
Seydou Doumbia scored early on at the Arena Khimki on Saturday to send fourth-placed CSKA level on points with Spartak.
Krasnodar climbed into the top five on Monday with an entertaining 3-2 victory over 15th-placed Terek Grozny, who are now without a league win in six.
The hosts were pegged back twice by Oleg Ivanov at Stadion Kuban, before Wanderson netted a 74th-minute winner, his second goal of the game.
At the other end of the table, Anzhi played out a goalless draw with Volga, extending their record of having not won a single match this season, and 10-man Ural conceded a last-minute equaliser as they failed to close the gap on opponents Krylya Sovetov in a 1-1 draw.
Tom Tomsk's struggles continued as they were beaten 1-0 at home by Rubin Kazan, while Amkar Perm climbed to sixth with a 3-1 win over Kuban Krasnodar.
Get the best features, fun and footballing frolics straight to your inbox every week.
Thank you for signing up to Four Four Two. You will receive a verification email shortly.
There was a problem. Please refresh the page and try again.