Zinchenko took the armband in his first appearance since Russia’s invasion of Ukraine.
Fernandinho had initially been listed as City captain for the tie, but the Brazilian, who signed from Ukrainian side Shakhtar Donetsk, offered the role to Zinchenko to show solidarity and support.
“I think it will be good for him to play and show the reason why he is here,” City manager Pep Guardiola had said on Monday.
“He is a magnificent player and needs to play football.”
Both team captains were expected to hold the Ukrainian flag when they lined up before the start of the Peterborough game.
Zinchenko was back in City’s starting line-up after being an unused substitute for Saturday’s Premier League win against Everton.
The 25-year-old was moved to tears by the display of support for Ukraine from Everton fans at Goodison Park.
Zinchenko has attended an anti-war vigil in Manchester city centre following the invasion and sent a since-deleted social media message that was fiercely critical of Russian President Vladimir Putin.
Several Ukrainian sports stars including tennis player Sergiy Stakhovsky and boxers Vasiliy Lomachenko and Oleksandr Usyk have reportedly returned to Ukraine to join the fight to protect their country.