"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > Go Elementos de la lista de idiomas técnicas de conversión concisas

Go Elementos de la lista de idiomas técnicas de conversión concisas

Publicado el 2025-04-17
Navegar:674

How to Transform List Elements Concisely in Go?

más corta para transformar los elementos de la lista en Go

en Python, la aplicación de una función en cada elemento en una lista se puede lograr utilizando comprensiones de lista. Sin embargo, en GO, se usa comúnmente un enfoque más detallado que involucra un bucle. Esta pregunta explora una forma concisa de lograr esta operación en GO.

Python Solution:

list = [1,2,3]
str = ', '.join(multiply(x, 2) for x in list)

go Solution (original):

list := []int{1,2,3}
list2 := []int

for _,x := range list {
    list2 := append(list2, multiply(x, 2))
}

str := strings.Join(list2, ", ")

shorter Go Solution (Go 1.18):

func Map[T, V any](ts []T, fn func(T) V) []V {
    result := make([]V, len(ts))
    for i, t := range ts {
        result[i] = fn(t)
    }
    return result
}

use:

input := []int{4, 5, 3}
outputInts := Map(input, func(item int) int { return item   1 })
outputStrings := Map(input, func(item int) string { return fmt.Sprintf("Item:%d", item) })

Esta función de mapa ofrece una forma concisa y genérica de aplicar una función a una lista de cualquier tipo, lo que resulta en una nueva lista de valores transformados.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3