Jest jednym z trzech synów Bogusława i Beaty Zielińskich[2]. Jego rodzice zajmują się działalnością społeczną, przez wiele lat prowadzili pogotowie rodzinne we własnym domu w Ząbkowicach Śląskich, gdzie bracia Piotr, Paweł i Tomasz byli stale zaangażowani w pomoc i życie przybranego rodzeństwa[2]. Prowadzą także dwa domy dziecka[3].
Ojciec Bogusław jest nauczycielem wychowywania fizycznego oraz języka niemieckiego[2], był piłkarzem Orła Ząbkowice Śląskie, amatorskich drużyn niemieckich, m.in. SG Lütgendortmund[4], a także pierwszym trenerem Piotra[2]. To właśnie ojciec rozpoczął szkolenie swoich synów, ucząc ich przyjęcia piłki, dryblingu, poruszania się na boisku oraz prowadził z nimi zajęcia ogólnorozwojowe[4]. Piotr jako dziecko miał talent do wielu dyscyplin sportowych[4]. Był ruchliwym i zwinnym chłopcem, jednak początkowo słabszym fizycznie od rówieśników[4]. Od najmłodszych lat cechowała go niekonwencjonalna technika podczas gry w piłkę nożną[4].
Kariera klubowa
Początki
Swoją karierę rozpoczynał w 2005, w drużynach młodzieżowych Orła Ząbkowice Śląskie. Wyróżniał się na turniejach młodzieżowych, co owocowało wieloma nagrodami indywidualnymi[4]. Brał udział m.in. w turnieju Z podwórka na Stadion o Puchar Tymbarku[5]. Czeski trener Zagłębia Lubin, Bohumil Palik zaprosił go na obóz sportowy Sparty Praga, gdy Piotr miał zaledwie 11 lat[4]. Na międzynarodowych imprezach zainteresowani byli nim skauci wielu europejskich akademii. Młody piłkarz wziął udział w turnieju towarzyskim w barwach Bayeru Leverkusen, gdzie dzięki dobremu występowi wzbudził również zainteresowanie skautów Liverpoolu[6]. Odbył także testy w Sc Heerenven oraz Feyenoordzie, tam trenował m.in. z Nathanem Ake[4][6]. Ostatecznie utalentowany zawodnik trafił do uznawanej za najlepszą na Dolnym Śląsku, akademii Zagłębia Lubin[4]. W akademii dolnośląskiego klubu spędził cztery lata, występując m.in. w rozgrywkach Młodej Ekstraklasy[7] i będąc w tym czasie regularnie powoływanym do młodzieżowych reprezentacji Polski, m.in. przez trenera Marcina Dornę[4].
Udinese Calcio
W 2011 wyjechał do Włoch i podpisał kontrakt z klubem Udinese Calcio. W sezonie 2011/2012 występował w młodzieżowych rozgrywkach Primavery, strzelając 2 gole w 12 występach.
2012/2013
W kolejnym sezonie zdobył 7 bramek w 12 spotkaniach Primavery, trenował z pierwszą drużyną Udinese, znajdował się w kadrze meczowej na spotkania Serie A, a z czasem otrzymał od trenera Francesco Guidolina szansę na debiut. 2 listopada 2012 zadebiutował w pierwszej drużynie podczas meczu 15. kolejki Serie A z Cagliari Calcio (4:1), zmieniając w 91. minucie meczu Antonio Di Natale[8]. Kolejny występ w pierwszej drużynie zanotował w 29. kolejce Serie A, zastępując Medhiego Benatię w 87. minucie meczu z Catanią[9]. Kolejną szansę występu otrzymał w 31. kolejce, notując minutowy epizod w meczu z Chievo Verona (3:1)[10]. 14 kwietnia 2013 w meczu z Parmą po raz pierwszy wystąpił w podstawowym składzie i zanotował dwie asysty: przy bramkach Luisa Muriela i Roberto Pereiry, a spotkanie zakończyła się zwycięstwem jego drużyny 3:0[11]. Od pierwszej minuty rozpoczynał również trzy kolejne ligowe spotkania, z Lazio (1:0), Cagliari (1:0) i Sampdorią (3:1), a w dwóch pozostałych kolejkach wchodził na boisko jako rezerwowy[12]. Jego drużyna zakończyła sezon na 5. miejscu w tabeli Serie A.
2013/2014
Sezon 2013/2014 rozpoczął jako zawodnik pierwszej drużyny. W meczu 1. kolejki Serie A z Lazio, wszedł na boisko w 68 minucie zastępując kontuzjowanego Giampiero Pinziego[13]. Następne spotkanie spędził na ławce rezerwowych, natomiast następnie pojawiał się na boisku regularnie, wchodząc z ławki w czterech spotkaniach z rzędu. W 8 kolejce rozegrał 16 minut w wyjazdowym meczu A.C. Milan na stadionie San Siro (0:1)[14]. W kolejnych sześciu spotkaniach nie zanotował występu aby powrócić do gry w zremisowanym 3:3 meczu 15 ligowej kolejki z SSC Napoli. Następnie po czterech meczach bez gry rozegrał cztery minuty z Sampdorią (0:3) a kolejne osiem meczów spędził na ławce rezerwowych. W 28 kolejce sezonu wszedł na boisko na osiem minut meczu z AS Romą, rozgrywanym na Stadio Olimpico (2:3). W 35 kolejce po sześciu meczach bez występu rozegrał całą drugą połowę spotkania z Torino (0:2)[14]. W sezonie 2013/2014 spędził na boisku 127 minut a jego zespół zajął 13. miejsce w ligowej tabeli.
Empoli FC
2014/2015
1 września 2014 został do końca sezonu 2014/2015 wypożyczony do Empoli FC. 13 sierpnia 2014 zastępując Daniele Croce w 80 minucie meczu 2 kolejki Serie A z AS Romą (0:1), zadebiutował w nowym klubie. 28 października 2014 w meczu 9 kolejki Serie A z Sassuolo (1:3), po raz pierwszy wyszedł w podstawowym składzie Empoli i zanotował asystę przy trafieniu Croce na 1:0[15]. 9 listopada 2014 zanotował asystę przy bramce Massimo Maccarone w meczu z Lazio (3:1)[16]. 3 grudnia 2014 w meczu 4 rundy z Genoą (2:0) zadebiutował w Pucharze Włoch[17]. 26 kwietnia 2015 asystował przy golu Maccarone w zremisowanym 2:2 meczu z Atalantą[18]. W sezonie 2014/2015 zagrał łącznie w 30 spotkaniach Empoli, notując w nich 3 asysty, a drużyna zajęła 15 miejsce w lidze.
2015/2016
W lipcu 2015 wypożyczenie zostało przedłużone o kolejny sezon[19]. Nowe rozgrywki rozpoczął jako podstawowy zawodnik drużyny trenera Maurizio Sarriego[20]. 13 września 2015 w meczu 3 kolejki Serie A przeciwko SSC Napoli (2:2) zanotował asystę przy golu Riccardo Saponary na 1:0[21]. 4 października 2015 zanotował asystę przy zwycięskiej bramce Massimo Maccarone w meczu z Sassuolo, a w 90 minucie został ukarany drugą żółtą kartką[22]. 2 października 2015 w meczu z Genoą (2:0) zdobył swoją pierwszą bramkę w Serie A[23]. W 16 i 17 kolejce Serie A notował asysty kolejno w spotkaniach z Carpi (3:0) i Bolonią (3:2)[20]. 23 stycznia 2016 zdobył bramkę w meczu z A.C. Milan, który zakończył się remisem 1:1[20]. 21 lutego 2016 strzelił bramkę w meczu z Sassuolo (2:3), natomiast 10 kwietnia 2016 trafił na 2:0 w spotkaniu z Fiorentiną[24]. 15 maja 2016 zdobył bramkę w meczu 35. kolejki z Torino (2:1). W sezonie 2015/2016 wystąpił w 37 meczach swojej drużyny, zdobywając 5 goli i notując 3 asysty a jego drużyna zajęła 10 lokatę w rozgrywkach Serie A. Występy w Empoli zakończył z bilansem 66 spotkań, 5 bramek i 7 asyst. Po zakończeniu sezonu Zieliński przygotowywał się do zmiany klubu, prowadząc rozmowy, m.in. z Liverpoolem[25].
SSC Napoli
2016/2017
4 sierpnia 2016 podpisał pięcioletni kontrakt z SSC Napoli. Kwota transferu wyniosła ok. 14 mln euro[26]. W nowym zespole zadebiutował wraz z Arkadiuszem Milikiem, 21 sierpnia 2016 w zremisowanym 2:2, ligowym spotkaniu z Pescarą, zmieniając w 71. minucie Marka Hamšíka[27]. 27 sierpnia wszedł na 18 minut w meczu z A.C. Milan (4:2), natomiast w następnej kolejce 10 września, debiutował w wyjściowej jedenastce Napoli i zanotował asystę przy bramce Jose Callejona z Palermo (3:0). 13 września 2016 podczas wygranego 2:1 meczu Napoli z Dynamem Kijów, zadebiutował w Lidze Mistrzów[28]. Zieliński stał się wówczas 57. Polakiem, który wystąpił w Lidze Mistrzów w barwach zagranicznego klubu i czwartym, który zagrał w tych rozgrywkach jako zawodnik klubu z Włoch[29]. 19 października 2016 znalazł się w wyjściowym składzie i rozegrał 82 minuty w meczu fazy grupowej Ligi Mistrzów z Besiktasem (2:3). 2 grudnia 2016 w ligowym meczu z Interem, zdobył swoją pierwszą bramkę dla Napoli[30]. W spotkaniu zanotował również asystę przy bramce Marka Hamsika, a mecz zakończył się zwycięstwem Napoli 3:0. W następnej kolejce wpisał się na listę strzelców w spotkaniu z Cagliari (5:0). 7 stycznia 2017 przeciwko Sampdorii, rozegrał swój 100. mecz w Serie A[31]. 15 stycznia asystował przy bramce Hamsika w spotkaniu z Pescarą (3:1). 4 lutego 2017 zaliczył dwie asysty w wygranym 7:1 ligowym meczu z Bolonią. 10 lutego 2017 zdobył bramkę w wygranym 2:0 meczu z Genoą, a w następnej kolejce trafił również w meczu z Chievo (3:1). 9 kwietnia 2017 zanotował asystę przy golu Lorenzo Insigne w meczu z Lazio (3:0). 4 maja ustalając na 5:0 wynik wyjazdowego meczu z Torino zdobył swoją 5 ligową bramkę. Sezon 2016/2017 zakończył rozgrywając 47 meczów, w których zdobył 6 bramek i zanotował tyle samo asyst. W swoim pierwszym sezonie w Napoli opuścił jedynie dwa spotkania Serie A, występując w 36 ligowych meczach; 18 w podstawowym składzie i 18 jako zmiennik i sięgnął z SSC Napoli po brązowy medal mistrzostw Włoch. Wystąpił także w siedmiu meczach Ligi Mistrzów i dotarł z drużyną do 1/8 finału, gdzie włoski zespół odpadł w dwumeczu z Realem Madryt. Rozegrał ponadto cztery mecze w Pucharze Włoch zdobywając bramkę w meczu 1/8 finału ze Spezią (3:1) i ostatecznie docierając z drużyną do półfinału, gdzie lepszy w dwumeczu okazał się Juventus.
2017/2018
Sezon 2017/2018 rozpoczął od występu w pierwszym meczu rundy kwalifikacyjnej do Ligi Mistrzów z OGC Nice (2:0). 19 sierpnia w spotkaniu 1 kolejki Serie A z Chievo Veroną rozegrał 90 minut a mecz zakończył się zwycięstwem jego drużyny 3:0. W następnej kolejce zachował miejsce w podstawowym składzie i zdobył jedną z bramek w mecze z Atalantą (3:1). 22 sierpnia wystąpił w drugim meczu kwalifikacji Ligi Mistrzów z Niceą (2:0), po którym jego drużyna zakwalifikowała się do fazy grupowej rozgrywek. 10 września w 3 kolejce Serie A ustalił na 3:0 wynik meczu z Bolonią. 18 listopada 2017 wszedł na boisko w 69 minucie meczu z Milanem i cztery minuty później strzelił bramkę na 2:0 dla Napoli. 21 listopada 2017 w wygranym 3:0 meczu z Szachtarem Donieck, strzelił swoją pierwszą bramkę w Lidze Mistrzów[32]. Do siatki trafił również w ostatnim meczu fazy grupowej Ligi Mistrzów z Feyenoordem (1:2). 16 grudnia po asyście Jorginho zdobył bramkę na 2:0 w wygranym 3:1 spotkaniu z Torino. 10 lutego 2018 asystował przy bramce Driesa Mertensa w meczu z Lazio (4:1). 22 lutego zdobył bramkę w rewanżowym meczu 1/16 finału Ligi Europy z RB Lipsk (2:0). Była to jego pierwsza bramka w rozgrywkach Ligi Europy UEFA. W rozgrywkach Serie A, rozegrał 36 z 38 spotkań; 14 razy wychodził na boisko w podstawowym składzie, natomiast 22 razy jako zmiennik. Zdobył 4 bramki i zanotował 1 asystę, sięgnął z Napoli po wicemistrzostwo Włoch.
2018/2019
W 1 kolejce sezonu 2018/2019 wystąpił w podstawowym składzie w wygranym 2:1 meczu z Lazio. W kolejnym meczu, 25 sierpnia 2018 zdobył dwie bramki w wygranym (3:2) meczu z A.C. Milan. 8 grudnia 2018 zdobył bramkę przeciwko Frosinone (4:0). 24 lutego 2019 po asyście Elseida Hysaja strzelił gola w meczu z Parmą (4:0). 3 kwietnia 2019 po jednomeczowej pauzie za żółte kartki zdobył jedyną bramkę dla Napoli w spotkaniu z jego byłą drużyną, Empoli FC (1:2). Następnie w 31 i 32 kolejce notował asysty w meczach z Genoą (1:1) i Chievo Verona (3:1). 19 maja zdobył bramkę w wygranym 4:1 spotkaniu z Interem Mediolan. W całym sezonie zagrał w 36 ligowych meczach Napoli (opuszczając tylko dwa spotkania) i zanotował w nich 6 goli oraz 2 asysty. W Lidze Mistrzów wystąpił we wszystkich sześciu meczach fazy grupowej, w której włoski zespół rywalizował z Paris Saint-Germain, Crveną zvezdą i Liverpoolem, ostatecznie plasując się na 3. miejscu. Po spadku do Ligi Europy, rozegrał w podstawowym składzie sześć spotkań w tych rozgrywkach i dotarł z drużyną do ćwierćfinału gdzie lepszy w dwumeczu (3:0) okazał się Arsenal. Zieliński zdobył w tamtej edycji LE, jedną bramkę- 14 lutego 2019, w pierwszym meczu 1/16 finału z FC Zurich. SSC Napoli zakończyło zmagania ligowe drugi sezon z rzędu na drugim miejscu w tabeli, sięgając po srebrne medale mistrzostw Włoch.
2019/2020
Kolejny sezon rozpoczął ponownie jako podstawowym zawodnik drużyny spod Wezuwiusza. 31 sierpnia 2018 w drugiej ligowej kolejce zanotował asystę przy bramce Hirvinga Lozano w meczu z Juventusem (3:4). 7 grudnia wykorzystując podanie Driesa Mertensa, zdobył bramkę na wagę remisu 1:1 z Udinese. 26 stycznia 2020 zdobył bramkę w wygranym 2:1 meczu z Juventusem[33]. W następnej kolejce, 3 lutego, zanotował asystę przy golu Arkadiusza Milika przeciwko Sampdorii (4:2). 25 lipca asystował przy trafieniu Elseida Hysaja w meczu z Sassuolo (2:0). W rozgrywkach Ligi Mistrzów UEFA wystąpił w pięciu meczach fazy grupowej, gdzie Napoli mierzyło się z Liverpoolem, KRC Genk oraz Red Bull Salzburg, a także w dwumeczu 1/8 finału z FC Barceloną (2:4), notując asystę przy bramce Driesa Mertensa w pierwszym meczu, zakończonym remisem 1:1. W Serie A rozegrał 37 spotkań (32 w pierwszym składzie) strzelając dwa gole i notując 4 asysty, natomiast zespół uplasował się na siódmym miejscu w ligowej tabeli. Był jednym z liderów drużyny w rozgrywkach Pucharu Włoch. Rozegrał w nich łącznie pięć spotkań, notując asystę przy zwycięskiej bramce Lorenzo Insigne w meczu 1/4 finału z Lazio (1:0) i ostatecznie dotarł z drużyną do finału rozgrywek. 17 czerwca 2020 pokonując w finale po rzutach karnych zespół Juventusu, zdobył z SSC Napoli Puchar Włoch. Było to jego pierwsze trofeum w karierze[34].
2020/2021
Sezon 2020/2021 rozpoczął w pierwszej kolejce rozgrywając 90 minut w meczu z Parmą (2:0). W drugiej kolejce, 27 września 2020 zdobył bramkę oraz zanotował asystę przy golu Victora Osimhena w wygranym 6:0 meczu z Genoą. Mecz czwartej kolejki z Atalantą opuścił ze względu na zakażenie koronawirusem. W związku z rekonwalescencją po chorobie, opuścił także następny mecz z Benevento, a w kolejnym trzech spotkaniach wchodził z ławki jako rezerwowy. 29 listopada 2020 trener Gennaro Gattuso wystawił go w pierwszym składzie na mecz z AS Romą. 6 grudnia 2020 zaliczył asystę przy golu Lorenzo Insigne w meczu z Crotone (4:0). 3 stycznia 2021 zdobył dwie bramki w wygranym 4:1 meczu z Cagliari. 17 stycznia zdobył jedną z bramek w meczu z Fiorentiną (6:0). 6 lutego 2021 w meczu 21 kolejki Serie A z Genoa FC (1:2) wystąpił jako kapitan SSC Napoli[35]. 13 lutego 2021 rozegrał 64 minuty w wygranym 1:0 meczu z Juventusem. 21 lutego ponownie wystąpił z opaską kapitana i zdobył bramkę w meczu z Atalantą (2:4). 3 marca zdobył bramkę z Sassuolo (3:3), a w następnej kolejce asystował przy golach Lorenzo Insigne i Victora Osimhena w spotkaniu z Bolonią (3:1). 14 marca zanotował asystę przy zwycięskim golu Matteo Politano w meczu z A.C. Milan (1:0). 11 kwietnia asystował przy golu Fabiana Ruiza w spotkaniu z Sampdorią (2:0), a 22 kwietnia przy bramce Driesa Mertensa przeciwko Lazio (5:2). 8 maja 2021 zdobył bramkę i zaliczył asystę w meczu ze Spezią (4:1), co powtórzył również w następnej kolejce przeciwko Udinese (5:1). 16 maja zanotował asystę przy bramce Lorenzo Venutiego w meczu z Fiorentiną. Sezon 2020/2021 był pod względem statystyk najlepszym sezonem Piotra Zielińskiego w profesjonalnej karierze. W 46 rozegranych meczach zdobył on 10 bramek i zanotował 13 asysty, osiągając pierwsze double-double w karierze. W rozgrywkach Serie A zagrał w 36 meczach zdobywając 8 goli i notując 11 asyst, ustanawiając tym samym swoje indywidualne rekordy w obu kategoriach, a drużyna zajęła 5. miejsce w ligowej tabeli. W rozgrywkach Pucharu Włoch rozegrał cztery mecze, notując asystę w spotkaniu 1/4 finału ze Spezią (4:2) i dotarł z zespołem do półfinału gdzie w dwumeczu zwyciężyła Atalanta (3:1). W Lidze Europy UEFA wystąpił łącznie w pięciu meczach, notując asystę w meczu z HNK Rijeka (2:0) i strzelając bramkę w meczu z Realem Sociedad (1:1) w fazie grupowej, a także zdobywając bramkę w rewanżowym meczu 1/16 finału z Granadą (2:1).
2021/2022
22 sierpnia 2021 wyszedł w podstawowym składzie w meczu 1. kolejki Serie A z Venezią (2:0), a w trakcie spotkania nabawił się kontuzji, która wykluczyła go z gry w kolejnym starciu ligowym z Genoą[36]. Do gry powrócił w 3. kolejce wchodząc z ławki w 73 minucie wygranego 2:1 meczu z Juventusem[37]. 16 września 2021 rozegrał 64 minuty w meczu Ligi Europy z Leicester City (2:2), mając szansę na zdobycie gola[38]. Jako zmiennik pojawił się na boisku w 4. ligowej kolejce przeciwko Udinese (4:0)[39]. Do podstawowego składu w Serie A powrócił 23 września 2021 w meczu 5. kolejki z Sampdorią[40]. Spędził na boisku 68 minut oraz zdobył premierową bramkę w sezonie ustalając wynik meczu na 4:0[41]. Strzelony gol był 31. bramką Zielińskiego w Serie A, dzięki czemu zrównał się pod względem zdobyczy bramkowych w tych rozgrywkach ze Zbigniewem Bońkiem[42]. 26 września w meczu 6. kolejki z Cagliari (2:0) zaliczył asystę przy bramce Victora Osimhena na 1:0[43]. W następnej kolejce, 3 października, asystował przy golu Amira Rrahmaniego, który zapewnił Napoli wyjazdowe zwycięstwo 2:1 z Fiorentiną[44].
2022/2023
W sezonie 2022/23 Piotr Zieliński wciąż reprezentował barwy Napoli. Sezon ten był niezwykle udany dla włoskiego zespołu. 15 sierpnia 2022 roku Zieliński zanotował doskonały start rozgrywek, strzelając gola w meczu z Hellasem Verona (5:2). Kilka dni później, w 2. kolejce Serie A spędził na boisku pełne 90 minut i zanotował dwie asysty w spotkaniu z Monzą (4:0). Zieliński błysnął początkiem września, kiedy to w 5. kolejce ligi włoskiej zanotował asystę z Lazio, a zaledwie parę dni później strzelił dwa gole i zanotował asystę w meczu Ligi Mistrzów z Liverpoolem (4:1). 1 października Polak dorzucił kolejną, ligową asystę do swojego konta. Zrobił to w meczu z Torino. 4 października w meczu z Ajaxem znów wpisał się na listę strzelców, a w spotkaniu rewanżowym Champions League z przedstawicielem Holandii, zanotował asystę. 4 maja 2023 roku wraz z Napoli został Mistrzem Włoch.[45]
Inter Mediolan
Od sezonu 2024/25 Zieliński będzie reprezentował barwy Interu[46]. 27 października 2024 w meczu Serie ADerby d’Italia z Juventusem F.C. strzelił dwie bramki (oba z rzutu karnego), a mecz zakończył się remisem 4:4[47].
Kariera reprezentacyjna
Polska
Zieliński ma za sobą liczne występy w juniorskich i młodzieżowych reprezentacjach Polski. W reprezentacjach od U-15 do U-21 rozegrał łącznie 48 spotkań, w których strzelił 9 bramek.
2013–2016
19 maja 2013 selekcjoner Waldemar Fornalik powołał go do reprezentacji Polski na mecze z Liechtensteinem i Mołdawią. 4 czerwca 2013 podczas towarzyskiego spotkania z Liechtensteinem (2:0) zadebiutował w reprezentacji Polski[48], zmieniając w przerwie meczu Kamila Grosickiego. 7 czerwca 2013 wystąpił w meczu eliminacji do Mistrzostw Świata 2014 z Mołdawią, zmieniając w 62 minucie Adriana Mierzejewskiego. 31 lipca 2013 znalazł się na liście powołań selekcjonera na spotkanie towarzyskie z Danią[49]. Rozegrał całą drugą połowę, a w 60. minucie, zapewniając drużynie zwycięstwo 3:2, zdobył swoją pierwszą bramkę w reprezentacji Polski[50]. 22 sierpnia 2013 został powołany na mecze eliminacji Mistrzostw Świata 2014 z Czarnogórą i San Marino[51]. 6 września 2013 rozegrał 75 minut w zremisowanym 1:1 meczu z Czarnogórą, natomiast w rozegranym 10 września 2013 spotkaniu z San Marino (5:1) zdobył dwie bramki, w tym jedną bezpośrednio z rzutu wolnego, oraz zanotował asystę przy golu Adriana Mierzejewskiego[52]. 27 września 2013 znalazł się na liście powołań na mecze eliminacji Mistrzostw Świata 2014 z Ukrainą i Anglią[53]. 11 października 2013 w spotkaniu z Ukrainą (0:1) zmienił w 76 minucie Mariusza Lewandowskiego, natomiast 15 października w meczu z Anglią pojawił się na boisku w 75 minucie zastępując Adriana Mierzejewskiego, a reprezentacja przegrała na Wembley po golach Rooneya i Gerrarda[54]. Ostatecznie Polska, zajmując czwarte miejsce w grupie H nie uzyskała kwalifikacji do turnieju finałowego[55].
31 sierpnia 2014 selekcjoner Adam Nawałka powołał go na mecz eliminacji do Mistrzostw Europy 2016 z Gruzją i spotkanie towarzyskie ze Szwajcarią[56]. Mecz z Gruzją (4:0) spędził na ławce rezerwowych, natomiast 18 listopada 2014 rozegrał 45 minut w spotkaniu towarzyskim ze Szwajcarią, które zakończyło się remisem 2:2[57]. 25 maja 2015 został powołany na drugi mecz eliminacji Mistrzostw Europy 2016 z Gruzją i towarzyski z Grecją[58]. 16 czerwca 2015 rozegrał 60 minut w towarzyskim meczu z Grecją, zakończonym bezbramkowym remisem[59]. 15 sierpnia 2015 znalazł się na liście powołań na mecze eliminacji z Niemcami i Gibraltarem[60]. Nie wystąpił w przegranym 1:3 meczu z Niemcami, natomiast 7 września 2015 rozegrał 24 minuty w wygranym 8:1 spotkaniu z Gibraltarem[60]. Na przełomie 2015 i 2016 roku zaczął odgrywać coraz ważniejszą rolę w drużynie narodowej. 13 listopada 2015 znalazł się w wyjściowym składzie i zanotował asystę przy bramce Kamila Grosickiego w wygranym 4:2 meczu z Islandią[61]. 23 marca 2016 rozegrał 83 minuty w wygranym 1:0 meczu towarzyskim z Serbią. 26 marca 2016 wystąpił także w meczu towarzyskim z Finlandią (5:0), a 1 czerwca 2016 rozegrał 90 minut w meczu towarzyskim z Holandią (1:2), który media określiły jako sprawdzian biało-czerwonych przed mistrzostwami Europy[62]. 6 czerwca 2016 rozegrał 5 minut w meczu towarzyskim z Litwą (0:0), który zwieńczył przygotowania Polaków do Euro[63].
12 maja 2016 został powołany przez selekcjonera Adama Nawałkę do szerokiej kadry na Mistrzostwa Europy 2016 we Francji[64]. 30 maja 2016 Adam Nawałka oficjalnie powołał go do ścisłego składu na mistrzostwa Europy[65]. Na turnieju wystąpił w wygranym 1:0 meczu fazy grupowej z Ukrainą[66], a w przerwie został zmieniony przez Jakuba Błaszczykowskiego[67]. Reprezentacja Polski dotarła ostatecznie do ćwierćfinału osiągając najlepszy wynik w historii swoich występów na mistrzostwach Europy[68].
Od 2016
Następnie Zieliński był jednym z liderów drużyny, która zajmując pierwsze miejsce w grupie E, zakwalifikowała się do Mistrzostw Świata 2018[69]. W eliminacjach wystąpił w podstawowym składzie we wszystkich dziesięciu meczach Polaków i zanotował w nich sześć asyst. 27 marca 2018 zdobył bramkę w meczu towarzyskim z Koreą Południową (3:2)[70], a 8 czerwca 2018 trafił do siatki w zremisowanym 2:2 meczu towarzyskim z Chile[71].
27 sierpnia 2018 selekcjoner Jerzy Brzęczek umieścił go na swojej pierwszej liście powołań na mecze z Włochami i Irlandią[74]. 7 września 2018 w zremisowanym 1:1 meczu Ligi Narodów z Włochami rozegrał 66 minut i zdobył bramkę po asyście Roberta Lewandowskiego[75]. Następnie był podstawowym piłkarzem drużyny narodowej w pozostałych meczach Ligi Narodów oraz jednym z liderów drużyny, która zajęła pierwsze miejsce w grupie G i awansowała na Mistrzostwa Europy 2020[76]. Zieliński wszystkie dziesięć spotkań eliminacji rozegrał w podstawowym składzie, a dziewięć z nich w pełnym wymiarze czasowym. 10 czerwca 2019 w meczu eliminacyjnym z Izraelem (4:0) zanotował asystę przy bramce Kamila Grosickiego[77].
17 maja 2021 Paulo Sousa powołał go do składu na Mistrzostwa Europy 2020[81]. 8 czerwca 2021 zdobył bramkę w zremisowanym 2:2 meczu towarzyskim z Islandią[82]. Na mistrzostwach Europy wystąpił w podstawowym składzie we wszystkich trzech meczach reprezentacji, która udział w turnieju zakończyła po fazie grupowej[83]. 23 czerwca 2021 w ostatnim meczu fazy grupowej ze Szwecją (2:3), zanotował asystę przy bramce Roberta Lewandowskiego na 1:2[84].
Piotr Zieliński jest obunożnym piłkarzem występującym na pozycji środkowego ofensywnego pomocnika. Cechami wyróżniającymi tego zawodnika są bardzo dobra technika użytkowa, dość rzadko spotykana u piłkarzy obunożność, opanowanie w grze, dobry drybling, umiejętność minięcia przeciwnika w sytuacji jeden na jednego, a także umiejętność kreacji akcji i precyzyjnego wykończenia. Zieliński zdobywa wiele efektownych bramek, m.in. poprzez uderzenia z dystansu bądź po akcjach kombinacyjnych. Jego dokładna rola na boisku różni się w zależności od taktyki bądź wymagań danego trenera. Jak w jednym z wywiadów stwierdził sam piłkarz preferowaną przez niego pozycją jest gra jako pół-lewy środkowy pomocnik[88]. Maurizio Sarri doceniając jego przegląd pola i umiejętność rozprowadzania piłki od tyłu, preferował ustawianie Zielińskiego na pozycji reggisty, czyli rozgrywającego, który kontroluje przebieg gry ofensywnej drużyny i często bierze udział w podawaniu ruchów prowadzących do bramek poprzez ich wizję, technikę, kontrolę nad piłką, kreatywność i zdolność do podania. Dzięki temu korzystał z jego atutu napędzenia akcji. Carlo Ancelotti widział w Polaku mezzalę, a więc zawodnika grającego w środku, ale jednak bliżej linii bocznej, np. jak Nicolò Barella w Interze Mediolan. Dzięki czemu mógł pokazywać swoją kreację z przodu i zostać tak zwanym otwieraczem, który napoczyna rywala w rozegraniu. Gennaro Gattuso wystawiał Polaka na pozycji trequartisty, czyli tzw. dziesiątki (cofniętego napastnika), zwalniając go z części zadań defensywnych a stwarzając mu możliwość otrzymywania większej ilości podań co w sezonie 2020/2021 przełożyło się na zwiększoną liczbę bramek i asyst. Na początku występów w SSC Napoli został pierwszym zmiennikiem w zespole. Jego zadanie polegało na tym, by dawać impuls swoimi wejściami na boisko, kiedy drużyna potrzebowała impulsu ofensywnego. Podstawowym piłkarzem został po przyjściu do klubu Carlo Ancelottiego. Jako mankamenty w jego grze obserwatorzy wskazywali brak cech przywódczych i wiary we własne możliwości. Zieliński najczęściej dostosowywał się poziomem gry do reszty zespołu. Podczas występów w reprezentacji narodowej często był krytykowany przez media za brak umiejętności przełożenia dobrej formy z rozgrywek klubowych na grę w reprezentacji[89]. W sezonie 2020/2021 obserwatorzy wskazywali, że Zieliński potrafił wyróżnić się na tle słabiej wyglądających kolegów z drużyny i wskazywali to jako przejaw wysokich umiejętności piłkarskich i progresu pod względem rozwoju mentalnego zawodnika[90]. Piotr Zieliński przez dziennikarzy, obserwatorów futbolu, trenerów czy też innych zawodników wielokrotnie porównywany był pod względem umiejętności do najlepszych piłkarzy na świecie i określany jako będący w stanie przystosować się do stylu gry większości drużyn piłkarskich[91][92][93][94][95][96][97][98]. W 2021 były reprezentant Albanii, Igli Tare, stwierdził w wywiadzie, że Zieliński to świetny pomocnik, który może grać na absolutnie najwyższym poziomie, natomiast jego problemem jest brak wiary we własne umiejętności oraz ambicji do wejścia na najwyższy poziom[99].
Zieliński to z pewnością nieprawdopodobnie utalentowany zawodnik, to piłkarz tańczący z piłką, tańczący nad nią. Jeden z najbardziej utalentowanych piłkarzy, jakich widziałem w swojej karierze trenerskiej, a także piłkarskiej. To ktoś bardzo inteligentny i widać to nie tylko na boisku. Ma nieprawdopodobne możliwości postępu.
Ma dwóch starszych braci, Pawła (ur. 1990) i Tomasza (ur. 1985)[105], którzy również zostali piłkarzami. 15 czerwca 2019 wziął ślub z Laurą Słowiak[106]. 29 maja 2021 urodził się syn pary Maksymilian[107]. W 2021 na Uniwersytecie w Neapolu zdał egzamin z języka włoskiego na poziomie B2[108]. 6 października 2023, po spełnieniu wymaganych prawem warunków, otrzymał z rąk prefekta Neapolu, Claudio Palomby obywatelstwo włoskie[109].