The 35-year-old will self-isolate for a little over a week, meaning he'll be unable to compete for Mercedes in the penultimate grand prix of the season.
“I'm devastated that I won't be racing this weekend,” Hamilton wrote, who took to social media after his diagnosis.
“Since we started the season in June, my team and I have been taking all the precautions we possibly can and following the regulations everywhere in order to stay safe.
“Unfortunately, even though I returned three negative results this past week, I woke up yesterday morning with mild symptoms and requested another test which came back positive.
“I've immediately gone into self-isolation for 10 days.
“I'm gutted not to be able to race this weekend but my priority is to follow the protocols and advice to protect others.
“I'm really lucky that I feel OK with only mild symptoms and will do my best to stay fit and healthy.
“Please look after yourselves out there. You can never be too careful. These are worrying times for everyone and we need to make sure we are looking after ourselves and each other. Stay positive.”
Hamilton's absence marks the first since his debut in 2007 that the championship's most successful driver hasn't raced.
He becomes the third driver in 2020 to miss a grand prix due to illness.
Sergio Perez of Racing Point tested positive for COVID-19 and subsequently missed the British Grand Prix and 70th Anniversary Grand Prix.
Team-mate Lance Stroll later missed the Eifel Grand Prix at the Nurburgring, and later tested positive.
Whether Hamilton will be able to contest the season-ending Abu Dhabi Grand Prix on December 11-13 remains unclear.
He must self isolate for 10 days and then return a negative test before being allowed to enter the F1 paddock again.