Leggendo attraverso Peter Norvig's Solving Every Sudoku Puzzle essay, ho incontrato alcuni idiomi Python che non avevo mai visto prima.Significato dell'uso di virgole e underscore con l'operatore di assegnazione Python?
Sono consapevole del fatto che una funzione può restituire una tupla/elenco di valori, nel qual caso è possibile assegnare più variabili per i risultati, come ad esempio
def f():
return 1,2
a, b = f()
Ma qual è il significato di ciascuno dei a seguire?
d2, = values[s] ## values[s] is a string and at this point len(values[s]) is 1
Se len(values[s]) == 1
, allora come è questa dichiarazione diversa da d2 = values[s]
?
Un'altra domanda su come utilizzare una sottolineatura nell'assegnazione qui:
_,s = min((len(values[s]), s) for s in squares if len(values[s]) > 1)
Ha il carattere di sottolineatura hanno l'effetto di sostanza scartando il primo valore restituito nella lista?
Così 'b, = T' significa ottenere il primo elemento da quella tupla? È anche "b = T [0]"? Ho bisogno di più esempi o meno spiegazioni wordy ^^ – Sherlock70
Sì, è lo stesso risultato – eduffy