<｜begin▁of▁sentence｜>### Instruction:
Given a dictionary of dictionaries representing an adjacency list with edge weights, how do you create a NetworkX graph from that data structure and print the edges with their associated weights?
### Response:
import networkx as nx

dod = {
    0: {1: {'weight': 1}},
    1: {2: {'weight': 2}, 3: {'weight': 3}},
    2: {},
    3: {}
}

G = nx.from_dict_of_dicts(dod, create_using=nx.Graph)
print(G.edges(data=True))
<|EOT|>
