2017-11-09 2 views
0

Ich versuche, effizient eine wiederholte Teil der Saiten viele Strings und gibt es iterieren würde ich mit einer Teilfunktionfunctools.partial Anhebung Typeerror „bekam mehrere Werte für die Keyword-Argument“ Python

def add_seqs(seqs_outer,sequence): 
    return seqs_outer[0]+sequence+seqs_outer[1] 

def my_function(string,start,stop,list_variable): 
    seqs_pre=string[:start] 
    seqs_post=string[stop:] 
    seqs_outer=(seqs_pre,seqs_post) 
    seqs_out=map(functools.partial(add_seqs,seqs_outer=seqs_outer),list_variable) 
    return seqs_out 

einfügen möchten ich möchte schließlich Funktion eine Anwendung verwenden, über viele verschiedene String s mit einem festen list_variable, aber ich erhalte eine Fehlermeldung in my_function:

TypeError: my_function() got multiple values for keyword argument 'seqs_outer'

ich glaube, ich d o etwas falsch in der Verwendung von partiellen - wie kann ich den obigen Code arbeiten?

Antwort

0

Okay, inspiriert von this thread tauschte ich die Reihenfolge der Argumente in

def add_seqs(seqs_outer,sequence)

zu

def add_seqs(sequence,seqs_outer)

dies hat den Job

Verwandte Themen