Ciao, la sintassi è la stessa dell'unpacking, ma al contrario si tratta di packing... io generalmente uso quella sintassi nei cicli for quando mi capita di iterare su tuple:
list_of_coordinates = [(2, 4, 5), (2, 4, 6), (2, 5, 7), (2, 5, 8)] for (x, y, z) in list_of_coordinates: print(x + 1) l'alternativa, secondo me, è più illeggibile: list_of_coordinates = [(2, 4, 5), (2, 4, 6), (2, 5, 7), (2, 5, 8)] for coord in list_of_coordinates: print(coord[0] + 1) Federico Il giorno mar 16 ott 2018 alle ore 14:24 Davide Brunato <brun...@sissa.it> ha scritto: > On 10/16/18 1:06 PM, Alessandro Dentella wrote: > > mi sono accorto dopo tanti anni di uso di Python di non avere idea di > > questa sintassi: > > > > [tmp_loc] = glob.glob(os.path.join(tmp_dest, '*')) > > > > che trovate usata qui: > > > > #L1740 > > > > Che cosa fa? che senso ha usarla quando mi vengono in mente vari altri > > modi di ottenere quello che (forse, penso) faccia. > > > > Soprattutto, quella riga st creandomi problemi... > > > > Chi mi sa illuminare? > > > Può servire ad estrarre da un iterabile/lista/tupla una sequenza di > valori, generando un errore in caso di discordanza nel numero di > elementi o se l'operando a destra non è un iterabile: > > >>> [a] = 1 > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > TypeError: 'int' object is not iterable > >>> [a] = 1, > >>> a > 1 > >>> [a] = 1, 2 > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ValueError: too many values to unpack > >>> [a] = [] > Traceback (most recent call last): > File "<stdin>", line 1, in <module> > ValueError: need more than 0 values to unpack > > Credo sia equivalente alla sintassi con parentesi tonde, o a quella con > virgole, usata solitamente per il doppio assegnamento: > > >>> a, b = [4, 5] > >>> a, b > (4, 5) > >>> a, = [6] > >>> a > 6 > > Ciao > > Davide > _______________________________________________ > Python mailing list > Python@lists.python.it > https://lists.python.it/mailman/listinfo/python >
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python