Cancelo was supposed to play a key role in Portugal’s quest to defend the title they won in 2016 but he returned the only positive result from routine tests conducted on the squad on Saturday.
The Manchester City right back helped his club side win the Premier League and Carabao Cup last season, making 43 appearances across all competitions and scoring three goals.
Dalot was on loan at AC Milan from Manchester United last season, making 33 appearances in all competitions.
A statement from the Portuguese Football Federation read: "Under-21 international Diogo Dalot will join the National Team's delegation in Budapest to prepare for his debut at Euro 2020."
"The AC Milan player will replace Joao Cancelo, who tested positive for Covid-19 following a rapid antigen test carried out this Saturday by the FPF Health and Performance Unit.
"The Hungarian health authorities were immediately informed and the player – who is doing well – was placed in isolation. The result of the test carried out by USP was confirmed by an RT-PCR test carried out on Joao Cancelo also on Saturday and whose result was known on Sunday morning.
"In accordance with the Covid-19 protocol defined by UEFA before the Euro 2020 matches, all players and members of the entourage underwent RT-PCR tests on Saturday. The results, with the exception of Joao Cancelo, were negative.
Portugal will begin the defence of their title against Hungary on Tuesday before taking on Germany and France.