Lloyds Amex will give you 1.25 avios/£.
BA will give you 3 (so a net gain of 1.75) but then will charge you roughly 3%. So you gain 1.75 avios for 3p, meaning you need to get 1.71p of value per avios.
Personally, I'd be using the Lloyds card but if you'd be prepared to pay £4k for an F flight to Japan (cash in lieu of avios, as opposed to splashing 240k avios), then the BA card would make more sense.