Gyokeres scored 39 goals in the Liga Portugal over the course of Sporting's title-winning campaign, eight more than Mbappe managed in his debut LaLiga season at Real Madrid.
However, the weighted points system used to determine the winner worked in the Frenchman's favour.
Each goal scored in Europe's top five leagues - the Premier League, LaLiga, Serie A, the Bundesliga and Ligue 1 - earn a player two points, whereas goals scored in leagues ranked sixth to 22nd in UEFA's coefficent earn 1.5 points each.
39 goals in the Portuguese top flight - ranked seventh by UEFA - therefore earned the 26-year-old 58.5 points, behind Mbappe's 62, beating Liverpool's Mohamed Salah into third by half a point.
A goal in yesterday's Taca de Portugal Final, as Sporting beat Lisbon neighbours Benfica to complete a domestic double, took Gyokeres to 53 goals in 51 games in all competitions this season. However, only league goals count towards the Golden Shoe.
Henrik Larsson remains the only Swedish winner of the award, after his 35 goals for Celtic in the 2000/01 season.
Gyokeres, who remains a key target for many clubs in the top five leagues, will now link up with the Sweden squad ahead of friendlies with Hungary and Algeria in June.