#slowniki
import pprint
import json

gra = {"nazwa_gry" : "CS",
       "data_wydania" : 1999,
       "wydawca" : "valve",
       "gatunek" : "strzelanka"}


print(gra["nazwa_gry"])
print(gra.get("nazwa_gry"))

#print(gra["nazwa_gy"])
#print(gra.get("nazwa_gy"))

for value in gra.values():
    print(value)

for key in gra.keys():
    print(key)

for item in gra.items():
   print(item)

gra.setdefault("PEGI", 18)
print(gra)

delated = gra.pop("wydawca")
print(delated)
print(gra)

last_item = gra.popitem()
print(last_item)
print(gra)

del gra["gatunek"]
print(gra)

#gra.clear()
#print(gra)

print(gra)
pprint.pprint(gra)

with open("l1.json","r" ) as file:
    spis_gier = json.load(file)
spis_gier["spis_gier"].append(gra)
pprint.pprint(spis_gier["spis_gier"])

with open("l1_2.json", "w") as file:
   json.dump(spis_gier, file,  indent = 4, sort_keys = True)

dict1 = {"a" : 4, "b": 3}
dict2 = {"c" : 1, "d": 2}
dict3 = {**dict1, **dict2}
dict4 = dict1 | dict2
print(dict3)
print(dict4)


fib_json = {0:0, 1:1}

def fibonacci(n):
    if n in fib_json:
        return fib_json[n]
    else:
        result = fibonacci(n-1) + fibonacci(n-2)
        fib_json[n] = result
        return result

fibonacci(20)
for item in fib_json.items():
    print(item)

