Ho cercato su di esso e ho ottenuto il seguente, python obtain variable name of argument in a function ma non sto ottenendo la risposta richiesta e sto ricevendo in realtà un errore dicendo add() prende esattamente 0 argomenti quando ho usato kwargs. Così ripubblicato per ottenere una risposta se ce n'è.Ottenere il nome parametro
Ho il seguente codice,
def add (arg1, arg2):
z = arg1 + arg2
print arg1Name, arg2Name, z
x = 10
y = 5
add(x,y)
voglio uscita come
x y 15
Per ottenere il risultato esatto richiesto è semplicemente ** impossibile **. Al momento dell'inizio di "aggiungi", i nomi che desideri stampare non sono lì da recuperare. Rinuncia a questo e accetta alternative come quella che citi e fraintendi (richiedendo una chiamata 'add (x = x, y = y)' per davvero ** preservare ** quei nomi che brami tanto male - per qualsiasi motivo sbagliato :-) –
Per aggiungere a ciò che dice Alex, inoltre, se la funzione è chiamata come 'add (3, 4)' o 'add (some_other_func(), a + b)', allora qual è il "nome parametro"? – Thanatos
@AlexMartelli Pensa a come in caso di errore, un traceback è in grado di mostrare esattamente quale sorgente allinea lo stack ha attivato l'errore. Quindi no, non è impossibile. – tripleee