Portugal manager Fernando Santos says it “hurts” to leave out several members of the Euro 2016 winning squad for this summer’s World Cup in Russia.
Lazio winger Nani, Barcelona midfielder Andre Gomes and Bayern Munich’s Renato Sanches, who spent this season on loan at Swansea, have all not been selected.
Striker Eder, who scored the winning goal in extra-time against France in the Euro 2016 final, also misses out.
Real Madrid forward Cristiano Ronaldo will captain the side.
“It hurts not to be able to include all the players who were with us in the European Championship,” said Santos.
“They have all contributed to writing a brilliant chapter in the history of Portuguese football, but I had to make choices that for me make a better puzzle.”
Former Manchester United winger Nani is Portugal’s third most-capped player behind Ronaldo and Luis Figo but has not played for his country since last year’s Confederations Cup.
The are four Premier League players in the squad – Manchester City forward Bernardo Silva, Leicester midfielder Adrien Silva, Southampton right-back Cedric Soares and West Ham midfielder Joao Mario, who is on loan from Inter Milan – while Rangers defender Bruno Alves also makes the cut.
Former Saints and Hammers centre-back Jose Fonte, who now plays for Chinese Super League side Dalian Yifang, is included, but Wolves midfielder Ruben Neves is not in the 23-man squad, despite starting the 2-1 friendly win over Egypt in March.
Portugal are in Group B alongside Spain, Morocco and Iran.
Goalkeepers: Anthony Lopes (Lyon), Beto (Goztepe), Rui Patricio (Sporting Lisbon)
Defenders: Bruno Alves (Rangers), Cedric Soares (Southampton), Jose Fonte (Dalian Yifang), Mario Rui (Napoli), Pepe (Besiktas), Raphael Guerreiro (Borussia Dortmund), Ricardo Pereira (Porto), Ruben Dias (Benfica)
Midfielders: Adrien Silva (Leicester), Bruno Fernandes (Sporting Lisbon), Joao Mario (West Ham), Joao Moutinho (AS Monaco), Manuel Fernandes (Lokomotiv Moscow), William Carvalho (Sporting)
Forwards: Andre Silva (AC Milan), Bernardo Silva (Manchester City), Cristiano Ronaldo (Real Madrid), Gelson Martins (Sporting Lisbon), Goncalo Guedes (Valencia), Ricardo Quaresma (Besiktas)