FAQ: Learn Python: A Day at the Supermarket - Keeping Track of the Produce

This community-built FAQ covers the “Keeping Track of the Produce” exercise in Codecademy’s lessons on Python.

FAQs for the Codecademy Python exercise Keeping Track of the Produce:

Join the Discussion. We Want to Hear From You!

Have a new question or can answer someone else’s? Reply (reply) to an existing thread!

Agree with a comment or answer? Like (like) to up-vote the contribution!

Need broader help or resources about Python in general? Go here!

Want to take the conversation in a totally different direction? Join our wider discussions.

Learn more about how to use this guide.

Found a bug? Report it!

Have a question about your account, billing, Pro, or Pro Intensive? Reach out to our support team!

None of the above? Find out where to ask other questions here!

Other FAQs

The following are links to additional questions that our community has asked about this exercise:

There are not enough solved FAQs about this question yet. Please contribute to this guide by replying below!

Not seeing your question? It may still have been asked before – try (search) in the top-right of this page. Still can’t find it? Ask it below by hitting the reply button below this post (reply).

2 posts were split to a new topic: What does %s and % do

2 posts were split to a new topic: Dictionary order

3 posts were split to a new topic: How Does This Work?

2 posts were split to a new topic: Why don’t we need to wrap stock[key] or prices[key] in str()?

2 posts were split to a new topic: Am getting an error about the the “Orange key”

7 posts were merged into an existing topic: My code prints the item, price, and stock - why isn’t it accepted?

4 posts were split to a new topic: Where did the food variable come from?

Why is my answer not accepted if I use %d instead of %s even the output appears to be the same?
Shouldn’t %d be used whenever we are dealing with numbers?

Appears or is?
Is that the only difference?
Does it pass/not pass as a result of only changing that?
If it’s an integer then the default string representation is already the same as %d so should is probably too strong of a word. %s doesn’t mean that the value is a string, it’s saying to use default string conversion.

I don’t understand what you mean here. Can you elaborate please?

That looks like a pretty complete and non-cryptic statement as it is, can’t guess what you’re missing about it, you’d have to describe what you’re wondering. Explaining more and better isn’t really… so great.

I need an explanation on how the loop was able to match the key with the two key:values correctly in the printed console? I even reshuffled the keys in my dictionaries, and the loop was still able to print out the right prices/stock with the correct keys

orange
price: 1.5
stock: 32
pear
price: 3
stock: 15
banana
price: 4
stock: 6
apple
price: 2
stock: 0

In Python 2, dictionaries are unordered. We access the values by polling the key.

price['orange']    =>  1.5
stock['orange']    =>  32
1 Like

I tried solving 8/13 of “Keeping Track of the Produce” and it gave me this error:

“The output Prices: 1.5 was not expected! Check your code for why that’s happening.”
Here is my code.

prices = {

** “banana” : 4,**

** “apple”: 2,**

** “orange”: 1.5,**

** “pear”: 3**

}

stock = {

** “banana”: 6,**

** “apple”: 0,**

** “orange”: 32,**

** “pear”: 15**

}

for food in prices:

** print food**

** print “Prices: %s” % prices[food]**

** print “Stock: %s” % stock[food]**

My result was:

orange
Prices: 1.5
Stock: 32
pear
Prices: 3
Stock: 15
banana
Prices: 4
Stock: 6
apple
Prices: 2
Stock: 0

I believe for this problem we must follow the example to the letter:

price: 1.5
stock: 32