In Python how do I use a for loop, to create nested list from dictionary?
up vote
1
down vote
favorite
This is homework:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
This is the result I'm supposed to get:
fruits_list = [
['banana', 'banana', 'banana'],
['apple', 'apple'],
['mango'],
['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
python-3.x loops dictionary for-loop nested
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
add a comment |
up vote
1
down vote
favorite
This is homework:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
This is the result I'm supposed to get:
fruits_list = [
['banana', 'banana', 'banana'],
['apple', 'apple'],
['mango'],
['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
python-3.x loops dictionary for-loop nested
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
what I had tried was more like:
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do[key]*value. If you just dokey*valueyou'll get a string concatenation, not a list.
– Cheche
2 days ago
add a comment |
up vote
1
down vote
favorite
up vote
1
down vote
favorite
This is homework:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
This is the result I'm supposed to get:
fruits_list = [
['banana', 'banana', 'banana'],
['apple', 'apple'],
['mango'],
['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
python-3.x loops dictionary for-loop nested
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
This is homework:
fruits = {'banana':3,'apple':2, 'mango':1, 'kiwi':5}
This is the result I'm supposed to get:
fruits_list = [
['banana', 'banana', 'banana'],
['apple', 'apple'],
['mango'],
['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
python-3.x loops dictionary for-loop nested
python-3.x loops dictionary for-loop nested
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
edited Nov 21 at 0:14
Cheche
792118
792118
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
asked Nov 20 at 23:34
A J E
132
132
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
New contributor
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
A J E is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
what I had tried was more like:
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do[key]*value. If you just dokey*valueyou'll get a string concatenation, not a list.
– Cheche
2 days ago
add a comment |
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
what I had tried was more like:
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do[key]*value. If you just dokey*valueyou'll get a string concatenation, not a list.
– Cheche
2 days ago
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
what I had tried was more like:
– A J E
2 days ago
what I had tried was more like:
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do
[key]*value. If you just do key*value you'll get a string concatenation, not a list.– Cheche
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do
[key]*value. If you just do key*value you'll get a string concatenation, not a list.– Cheche
2 days ago
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
accepted
You need to iterate all over fruits keys and build a list repeating the key N=value times.
You can accomplish this with a list comprehension.
- To iterate all over dict items you'll need
fruits.items(). - To build a list repeating each key N times do:
[key]*N. - As dict values indicate how many times to repeat, do:
[key]*value.
Finally:
fruits_list = [[key]*value for key, value in fruits.items()]
Then print(fruit_list) gives you:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
[['banana', 'banana', 'banana'], ['apple', 'apple'], ['mango'], ['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
accepted
You need to iterate all over fruits keys and build a list repeating the key N=value times.
You can accomplish this with a list comprehension.
- To iterate all over dict items you'll need
fruits.items(). - To build a list repeating each key N times do:
[key]*N. - As dict values indicate how many times to repeat, do:
[key]*value.
Finally:
fruits_list = [[key]*value for key, value in fruits.items()]
Then print(fruit_list) gives you:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
[['banana', 'banana', 'banana'], ['apple', 'apple'], ['mango'], ['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
add a comment |
up vote
0
down vote
accepted
You need to iterate all over fruits keys and build a list repeating the key N=value times.
You can accomplish this with a list comprehension.
- To iterate all over dict items you'll need
fruits.items(). - To build a list repeating each key N times do:
[key]*N. - As dict values indicate how many times to repeat, do:
[key]*value.
Finally:
fruits_list = [[key]*value for key, value in fruits.items()]
Then print(fruit_list) gives you:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
[['banana', 'banana', 'banana'], ['apple', 'apple'], ['mango'], ['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
add a comment |
up vote
0
down vote
accepted
up vote
0
down vote
accepted
You need to iterate all over fruits keys and build a list repeating the key N=value times.
You can accomplish this with a list comprehension.
- To iterate all over dict items you'll need
fruits.items(). - To build a list repeating each key N times do:
[key]*N. - As dict values indicate how many times to repeat, do:
[key]*value.
Finally:
fruits_list = [[key]*value for key, value in fruits.items()]
Then print(fruit_list) gives you:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
[['banana', 'banana', 'banana'], ['apple', 'apple'], ['mango'], ['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
You need to iterate all over fruits keys and build a list repeating the key N=value times.
You can accomplish this with a list comprehension.
- To iterate all over dict items you'll need
fruits.items(). - To build a list repeating each key N times do:
[key]*N. - As dict values indicate how many times to repeat, do:
[key]*value.
Finally:
fruits_list = [[key]*value for key, value in fruits.items()]
Then print(fruit_list) gives you:
Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
[['banana', 'banana', 'banana'], ['apple', 'apple'], ['mango'], ['kiwi', 'kiwi', 'kiwi', 'kiwi', 'kiwi']]
edited 2 days ago
answered Nov 21 at 1:00
Cheche
792118
792118
add a comment |
add a comment |
A J E is a new contributor. Be nice, and check out our Code of Conduct.
A J E is a new contributor. Be nice, and check out our Code of Conduct.
A J E is a new contributor. Be nice, and check out our Code of Conduct.
A J E is a new contributor. Be nice, and check out our Code of Conduct.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53403205%2fin-python-how-do-i-use-a-for-loop-to-create-nested-list-from-dictionary%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Can you please tell us what have you tried?
– Cheche
Nov 20 at 23:37
what I had tried was more like:
– A J E
2 days ago
fruits_list = [key*value for key, value in fruits.items()]
– A J E
2 days ago
Check posted answer. You're close but, in order to get a list with repeated items, you need to pass a list. Do
[key]*value. If you just dokey*valueyou'll get a string concatenation, not a list.– Cheche
2 days ago