There are two options for eating out in London: the first is to cook for yourself. In Tesco and Sainsbury's you can buy sliced vegetables, cheese, ham or ready-made sandwiches (instead of 15-20 GBP for lunch, you'll get about 10 GBP for the whole day). A bottle of milk in stores costs a little more than 1 GBP, 5-6 scones - about 2 GBP. The second option is London restaurants, and tourist reviews will help you choose an establishment of the right price segment.
A list of popular cafes and restaurants in London:
Wetherspoons pubs (there are about a hundred of them in the city) - a full meal (for example, traditional fish and chips) and a pint of Guinness will cost 10-15 GBP.
Yes, if you're going to go to all the pubs in London (it's futile, be warned!), be sure to check out Lamb and Flag, which has been licensed to sell alcohol since 1623!
Inexpensive Chinese restaurants in London - try to choose places away from the center (their owners are focused on the middle class of Londoners, not tourists). By the way, prices in London's other "national" cafes (Vietnamese, Peruvian, Brazilian) are also very affordable.
The best restaurants in London include Fifteen London (Jamie Oliver's "naked chef" place), Lantana Cafe (steak kingdom!) or Nobu (the best Japanese cuisine in London). The average bill is 40-80 GBP per person. For richer tourists - The Capital (2 Michelin stars), Sketch (combines French cuisine and modern art) or Gordon Ramsay Royal Hospital Road (3 Michelin stars and Britain's most famous chef). Prices at these London restaurants are high, with the average bill starting at 90 GBP per person.
London has a lot of cafes - the best ones are Moolis in Soho, Malletti Pizzeria, Nude Espresso (coffee and nothing but coffee!) and Cat Emporium, where live cats create coziness.