Search code examples
pythonpython-2.7setdefault

setdefault() takes no keyword arguments


I have the following code snippet:

mirna2age = {}
for i in agesdb:
    mirna2age.setdefault(i[0],default=[]).append(i[1])

However, Python returns

TypeError: setdefault() takes no keyword arguments

I am unsure why. Does anyone have any ideas?


Solution

  • Set default should be used like:

    mydict.setdefault(key, defaultvalue)
    

    Don't use kwargs, just provide teh default as the second argument.