Reputation: 33
I want to use a for loop to create newly named variables from the keys, which can then be retrieved globally down the road. To define the variable before with None
, has unfortunately brought nothing. Also, with Global
I did not get further, but possibly I used it also wrong. I have googled a lot, but unfortunately I couldn't get hold of the solution. Is there any trick how I can retrieve the new variables in the later course?
LAeq = { 'Januar': [69.1, 57.9, 58.3, 55.6],
'Februar': [66.7, 65.5, 63.5, 62.4] }
anzahl_Januar = None #anzahl is number in English
print ("{:<9} {:<5} {:<9}".format('Monat','Tage','Prozent'))
for key in LAeq.keys():
for value in LAeq[key]:
anzahl_key = 0
for i in LAeq[key]: #LAeq['Januar']
if i > 63 :
anzahl_key = anzahl_key + 1
print("{:<9} {:<5} {:<9}".format(key, anzahl_key, "{:.1%}".format(anzahl_key/len(LAeq[key]))))
print(anzahl_Januar)
Obviously the dictionary is much larger, I just put down an example here. I am thankful for any advice! :)
Upvotes: 3
Views: 1845
Reputation: 58
You can use the exec command, like this:
dict={}
for i in range (10):
key=str("x"+str(i))
dict[key]=i
for key,value in dict.items():
exec(f'{key}={value}')
Try adjusting this to your data.
Upvotes: 3