vorrei chiarire due punti qui:
- in primo luogo non predefinito argomento non dovrebbe seguire argomento di default, significa che non è possibile definire (a = "b", c) in funzione ordine di definire parametri in funzione sono:
- parametro posizionale o cioè il parametro non predefinito (a, b, c)
- parametro chiave o parametro predefinito cioè (a = "b", r = "j")
- parametro solo parole chiave i.e (* args)
- parametro var-keyword i.e (**) kwargs
def example(a, b, c=None, r="w" , d=[], *ae, **ab):
(a, b) sono parametro posizionale
(c = nessuno) è parametro opzionale
(r = "w") è il parametro della parola chiave
(d = []) è il parametro di lista
(* e) è (opta *) per parole chiave solo
è var-parola chiave parametro
così primi ri-organizzare i tuoi parametri di
- cosa ora secondario è che devi definire len1 quando si è facendo hgt = len1 l'argomento len1 non viene definito quando vengono salvati i valori predefiniti, Python calcola e salva i valori predefiniti quando si definisce la funzione len1 non è definita, non esiste, quando ciò accade (esiste solo quando la funzione viene eseguita)
quindi secondo rimuovere "len1 = hgt" non è consentito in python.
tenere a mente la differenza tra la discussione e parametri, è possibile saperne di più qui: Arguments and parameters in python
fonte
2016-10-09 09:40:33
si prega di leggere questo: http://legacy.python.org/dev/peps/pep-3102/ –
possibile duplicato [Perché gli argomenti non predefiniti non possono seguire l'argomento predefinito?] (Http://stackoverflow.com/questions/16932825/why-non-default-arguments-cant-follows-default-argument) –
Qual è il messaggio di errore? –