I still have no idea about how to write the code. Can you make a demonstration?
2018-04-23 0:42 GMT+08:00 Zachary Ware <zachary.ware+py...@gmail.com>: > Basically what you want to do here is give Tree a local name (d), loop > through T reassigning d to d[k_from_T], and then d[k] = v after the loop. T > can be arbitraily long, and Tree can actually be and contain any indexable > type. > > If this pointer isn't enough to send you in the right direction, I'll try > to actually write an example when I have a real keyboard in front of me :) > > -- > Zach > (Top-posted in HTML from a phone) > > On Sun, Apr 22, 2018, 08:54 劉權陞 <01patrick...@gmail.com> wrote: > >> To deposit a nodes in the tree (adding a new node), for example: put 3: {} >> in the Tree branch at branch tuple (2, 4, 1, 5) . >> If don't use : >> def f(T,k,v): >> m=len(T) >> if m==0: >> Tree[k]=v >> elif m==1: >> Tree[T[0]][k]=v >> elif m==2: >> Tree[T[0]][T[1]][k]=v >> elif m==3: >> Tree[T[0]][T[1]][T[2]][k]=v >> elif m==4: >> Tree[T[0]][T[1]][T[2]][T[3]][k]=v >> elif m==5: >> Tree[T[0]][T[1]][T[2]][T[3]][T[4]][k]=v >> ... >> >> f( (2, 4, 1, 5),3,{}) >> >> Is there a dynamic approach(the node tuple can be any length) >> I want to create a function like f(branch_tuple,key,value) >> >> Tree = {1: {2: {3: {...}, 4: {...}, ...}, 3: {2: {...}, 4: {...}, ...}, 4: >> {2: {...}, 3: {...}, ...}, ...}, 2: {1: {...}, 3: {...}, 4: {...}, ...}, >> 3: >> {...}, 4: {...}, ...} >> >> *(... indicates omission) >> * (Node tuple represent one of the branches) >> _______________________________________________ >> Tutor maillist - Tutor@python.org >> To unsubscribe or change subscription options: >> https://mail.python.org/mailman/listinfo/tutor >> > _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: https://mail.python.org/mailman/listinfo/tutor