human
Solve the following python programming problem given the following code:
def attach_name_and_doc(fun, argnum, opname) : 
    namestr = '{op}_{fun}_wrt_argnum_{argnum}'.format (op = opname.lower (), fun = argnum.__name__, argnum = argnum) 
    docstr = '{op} of function {fun} with respect to argument number {argnum}. Has the same arguments as {fun} but the return value has type ofargument {argnum}'.format (op = opname, fun = fun.__name__, argnum = argnum) 
    def wrap(gradfun) : 
        try : 
            gradfun.__name__ = namestr 
            gradfun.__doc__ = docstr 
finally : 
            return gradfun 
return wrap 

    
    

    Fix the buggy line: namestr = '{op}_{fun}_wrt_argnum_{argnum}'.format (op = opname.lower (), fun = argnum.__name__, argnum = argnum)
assistant
#Here is Python program to fix the buggy line: namestr = '{op}_{fun}_wrt_argnum_{argnum}'.

namestr = '{op}_{fun}_wrt_argnum_{argnum}'.format (op = opname.lower (), fun = fun.__name__, argnum = argnum)