mesclar listas com interseção

Dado que:

g=[[], [], [0, 2], [1, 5], [0, 2, 3, 7], [4, 6], [1, 4, 5, 6], [], [], [3, 7]]

Como posso comparar cada lista dentro de g para que, para listas que compartilham qualquer número comum, possa mesclar-se a um conjunto?

por exemplo.
0 existe emg[2] eg[4] então eles se fundem a um conjunto{0,2,3,7}

Eu tentei o seguinte, mas não funciona:

for i in g:
    for j in g:
        if k in i == l in j:
            m=set(i+j)

Eu quero fazer o maior conjunto possível.