'Creates a list from self to other using _dcm_dict.'

def _pdict_list(self, other, num):

    outlist = [[self]]
    oldlist = [[]]
    while (outlist != oldlist):
        oldlist = outlist[:]
        for (i, v) in enumerate(outlist):
            templist = v[(-1)]._pdlist[num].keys()
            for (i2, v2) in enumerate(templist):
                if (not v.__contains__(v2)):
                    littletemplist = (v + [v2])
                    if (not outlist.__contains__(littletemplist)):
                        outlist.append(littletemplist)
    for (i, v) in enumerate(oldlist):
        if (v[(-1)] != other):
            outlist.remove(v)
    outlist.sort(key=len)
    if (len(outlist) != 0):
        return outlist[0]
    raise ValueError(((('No    Connecting    Path    found    between    ' + other.name) + '    and    ') + self.name))
