Menu
Coddy logo textTech

Paquetes e importaciones

Parte de la sección Programación Orientada a Objetos del Journey de GO de Coddy — lección 3 de 107.

Cada archivo de Go comienza con una declaración package. La palabra clave import trae paquetes de la biblioteca estándar de Go para que puedas usar sus funciones.

Importar un solo paquete

import "fmt"

Importa múltiples paquetes usando un bloque de importación

import (
    "fmt"
    "math"
    "strings"
)

Usa funciones de paquetes importados con el nombre del paquete como prefijo

package main

import (
    "fmt"
    "strings"
    "math"
)

func main() {
    upper := strings.ToUpper("hello")
    fmt.Println(upper) // Output: HELLO

    root := math.Sqrt(16)
    fmt.Println(root) // Output: 4
}

Paquetes comunes de la biblioteca estándar

"fmt"     // E/S formateada (Print, Scan, Sprintf)
"strings" // Manipulación de cadenas (ToUpper, Contains, Replace)
"math"    // Funciones matemáticas (Sqrt, Pow, Pi)
"strconv" // Conversiones de cadenas (Itoa, Atoi)

Accedes a las funciones de un paquete utilizando packagename.FunctionName. Go solo te permite importar paquetes que realmente utilizas; las importaciones no utilizadas provocan un error de compilación.

challenge icon

Desafío

Intermedio

Corrige la sentencia de importación en utils.go para que las funciones funcionen correctamente. Necesitas importar los paquetes strings y math:

  • FormatText utiliza strings.ToUpper
  • ContainsWord utiliza strings.Contains
  • SquareRoot utiliza math.Sqrt

Hoja de referencia

Cada archivo de Go comienza con una declaración package. Utiliza la palabra clave import para traer paquetes de la biblioteca estándar de Go.

Importar un solo paquete:

import "fmt"

Importar múltiples paquetes utilizando un bloque de importación:

import (
    "fmt"
    "math"
    "strings"
)

Accede a las funciones de los paquetes importados utilizando packagename.FunctionName:

package main

import (
    "fmt"
    "strings"
    "math"
)

func main() {
    upper := strings.ToUpper("hello")
    fmt.Println(upper) // Output: HELLO

    root := math.Sqrt(16)
    fmt.Println(root) // Output: 4
}

Paquetes comunes de la biblioteca estándar:

"fmt"     // E/S formateada (Print, Scan, Sprintf)
"strings" // Manipulación de cadenas (ToUpper, Contains, Replace)
"math"    // Funciones matemáticas (Sqrt, Pow, Pi)
"strconv" // Conversiones de cadenas (Itoa, Atoi)

Nota: Go solo te permite importar paquetes que realmente utilizas; las importaciones no utilizadas provocan un error de compilación.

Pruébalo tú mismo

package main

import (
    "bufio"
    "fmt"
    "os"
    "strconv"
    "strings"
)

func main() {
    scanner := bufio.NewScanner(os.Stdin)
    scanner.Scan()
    line := scanner.Text()

    parts := strings.Fields(line)
    numStr := parts[len(parts)-1]
    text := strings.Join(parts[:len(parts)-1], " ")
    num, _ := strconv.ParseFloat(numStr, 64)

    fmt.Printf("Upper: %s\n", FormatText(text))
    fmt.Printf("Contains 'world': %t\n", ContainsWord(text, "world"))
    fmt.Printf("Sqrt: %.2f\n", SquareRoot(num))
}
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Programación Orientada a Objetos