The Frenchman underwent his medical on Tuesday and was unveiled as an Arsenal player on Wednesday afternoon.
Arsenal's initial approaches for Lacazette fell short of Lyon’s asking price and were rejected by the French side.
But after lengthy negotiations a transfer fee believed to be in the region of £52m, as quoted by Lyon in the wake of the deal, was settled upon by the two clubs.
The 26-year-old told Lyon president Jean-Michel Aulas earlier this summer that he wanted to leave the club and was subsequently linked to Atletico Madrid.
But Atletico’s failure to overturn their transfer ban opened the door for Arsenal to make a move on a player they have been targeting for two years now.
Manager Arsène Wenger described Lacazette as a "great addition" for the club who "will help us challenge at the top level" next season.
“We are very happy to have Alexandre join our group," he said. "He has shown over a number of years that he can score goals and that he is a very efficient finisher.
"As well, he has very interesting technical qualities and a strong character.
"So he is a guy who is a great addition for us, and someone who will help us challenge at the top level this season.”
Lacazette, who made his senior professional debut at Lyon seven years ago, will now travel with Arsenal to Sydney this weekend as the club's pre-season programme gets under way.
He is expected to make his home debut in the Emirates Cup on 29 or 30 July.
The Frenchman is Wenger's second signing of the summer, following Sead Kolasinac who joined the club on a free transfer last month.
Join our commenting forum
Join thought-provoking conversations, follow other Independent readers and see their replies