Questo esempio è piuttosto vago, ma forse qualcosa di simile?
items = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
items[3:6] = [''.join(items[3:6])]
che fondamentalmente un'operazione di giunzione (o assignment to a slice). Rimuove gli elementi da 3 a 6 e inserisce una nuova lista al loro posto (in questo caso un elenco con un elemento, che è la concatenazione dei tre elementi rimossi.)
Per qualsiasi tipo di elenco, è possibile eseguire questo (utilizzando l'operatore +
su tutti gli articoli indipendentemente dal loro tipo è):
items = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h']
items[3:6] = [reduce(lambda x, y: x + y, items[3:6])]
questo fa uso della funzione reduce
con una funzione lambda
che aggiunge sostanzialmente gli articoli insieme utilizzando l'operatore +
.
Su quali basi dovrebbe fusione avvenire? – Stephan202
Cosa sono a, b, ecc. (Cioè quale tipo di dati)? Così com'è, digitarlo in un interprete Python dà un errore perché questi sono nomi non associati. –
Vuoi sempre quegli elementi nell'elenco concatenati o vuoi essere in grado di scegliere dove e quanti più tardi? – tgray