Because the cashier doesn't think you're trying to hone in and take advantage of them personally.
Alright, so Walmart will match a local printed ad that shows an actual price. Some managers don't like this policy. Some cashiers don't like it. If you merely verbally say the price, even if you in fact have a great memory, they might think you're lying.
A written list, even if it's messy, takes that off the table. Makes for a much more relaxed transaction.
In my part of Texas, Aldi's often has lower food prices, as does Foodarama and Seller's Bros. Can pull the best prices from all and take the list into Walmart.
=======
Let's say I either work for another place, or work for Walmart itself, or know someone who does. I'm pretty familiar with the place!