(l1, l2, common=[])
| 887 | return split(h,[t]+rest) |
| 888 | |
| 889 | def commonpath(l1, l2, common=[]): |
| 890 | if len(l1) < 1: return (common, l1, l2) |
| 891 | if len(l2) < 1: return (common, l1, l2) |
| 892 | if l1[0] != l2[0]: return (common, l1, l2) |
| 893 | return commonpath(l1[1:], l2[1:], common+[l1[0]]) |
| 894 | |
| 895 | def relpath(p1, p2): |
| 896 | (common,l1,l2) = commonpath(split(p1), split(p2)) |