How do I shift key into values and make index as key in dictionary?
I have this dictionary:
d={'Acconti imposta IRAP (EE)': ('Acconti di imposta IRAP (EE)',
'Acconti di imposta IRAP (EE)',
'Acconti di imposta IRAP (EE)'),
'Acconti imposta IRES (EE)': ('Acconti di imposta IRES (EE)',
'Acconti di imposta IRES (EE)',
'Acconti di imposta IRES (EE)'),
'Acquisti carburanti lubrificanti auto': ('Acquisti carburanti e lubrificanti auto',
'Acquisti carburanti e lubrificanti auto',
'Acquisti carburanti e lubrificanti auto'),
'Acquisto cancelleria': ('Acquisto cancelleria',
'Acquisto cancelleria',
'Acquisto cancelleria'),
'Acquisto materiali consumo': ('Acquisto materiali di consumo',
'Acquisto materiali di consumo',
'Acquisto materiali di consumo')}
And I need it to look like this:
d1={0: ('Acconti imposta IRAP (EE)','Acconti di imposta IRAP (EE)',
'Acconti di imposta IRAP (EE)',
'Acconti di imposta IRAP (EE)'),
1: ('Acconti imposta IRES (EE)','Acconti di imposta IRES (EE)',
'Acconti di imposta IRES (EE)',
'Acconti di imposta IRES (EE)'),
2: ('Acquisti carburanti lubrificanti auto', 'Acquisti carburanti e lubrificanti auto',
'Acquisti carburanti e lubrificanti auto',
'Acquisti carburanti e lubrificanti auto'),
3: ('Acquisto cancelleria', 'Acquisto cancelleria',
'Acquisto cancelleria',
'Acquisto cancelleria'),
4: (Acquisto materiali consumo', 'Acquisto materiali di consumo',
'Acquisto materiali di consumo',
'Acquisto materiali di consumo')}
How can I do that? thank you!
CodePudding user response:
Try:
out = {i: (k,) v for i, (k, v) in enumerate(d.items())}
print(out)
Prints:
{
0: (
"Acconti imposta IRAP (EE)",
"Acconti di imposta IRAP (EE)",
"Acconti di imposta IRAP (EE)",
"Acconti di imposta IRAP (EE)",
),
1: (
"Acconti imposta IRES (EE)",
"Acconti di imposta IRES (EE)",
"Acconti di imposta IRES (EE)",
"Acconti di imposta IRES (EE)",
),
2: (
"Acquisti carburanti lubrificanti auto",
"Acquisti carburanti e lubrificanti auto",
"Acquisti carburanti e lubrificanti auto",
"Acquisti carburanti e lubrificanti auto",
),
3: (
"Acquisto cancelleria",
"Acquisto cancelleria",
"Acquisto cancelleria",
"Acquisto cancelleria",
),
4: (
"Acquisto materiali consumo",
"Acquisto materiali di consumo",
"Acquisto materiali di consumo",
"Acquisto materiali di consumo",
),
}
CodePudding user response:
Create a new empty dictionnary, iterate through your dictionnary and fill the new dictionnary:
d1 = dict()
cnt = 0
for key, value in d.items():
d1[cnt] = (key, *value)
cnt = 1