Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import pprint
- def registerTreat(lis): #lis = a list of parameters
- lSize = len(lis)
- if lSize == 0 or lSize == 1 or lSize == 2:
- print('error')
- elif lSize == 3:
- try:
- t[lis[0]][lis[1]] = lis[-1]
- except:
- try:
- t[lis[0]] = {}
- t[lis[0]][lis[1]] = lis[-1]
- except:
- print('error 1')
- elif lSize == 4:
- try:
- t[lis[0]][lis[1]][lis[2]] = lis[-1]
- except:
- try:
- t[lis[0]][lis[1]] = {}
- t[lis[0]][lis[1]][lis[2]] = lis[-1]
- except:
- try:
- t[lis[0]] = {}
- t[lis[0]][lis[1]] = {}
- t[lis[0]][lis[1]][lis[2]] = lis[-1]
- except:
- print('error 2')
- #elif lsize == 5
- #etc
- #elif lsize == 6
- #etc
- #elif lsize == 7
- #etc
- else:
- print('function error')
- return
- #example usage:
- t = {}
- value = 0.3
- stage = 'pre'
- registerTreat(['treatment','subtreatment', stage, value])
- pprint.pprint(t)
- # sometimes the output will be:
- # {'treatment': {'subtreatment': {'pre': 0.3}}}
- # and sometimes it will be:
- # {'treatment': {'subtreatment': {'pre': [0.3]}}}
- # I never call the function like this: registerTreat(['treatment','subtreatment', stage, [value]])
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement