Formatierte Ausgabe
Teil des Abschnitts Grundlagen der GO-Journey von Coddy — Lektion 29 von 109.
Lernen wir, wie wir unsere Ausgabe in Go mit der fmt.Printf() Funktion formatieren. Diese Funktion ermöglicht es uns, Werte mithilfe von Platzhaltern in bestimmten Formaten anzuzeigen.
Zuerst erstellen wir ein Programm, das verschiedene Datentypen mithilfe von Platzhaltern formatiert:
name := "Gopher"
age := 5
height := 1.5
fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)Nach der Ausführung dieses Codes wird der Text "Name: Gopher, Age: 5, Height: 1.5" auf dem Bildschirm angezeigt. Die Platzhalter in unserem String werden durch die tatsächlichen Werte unserer Variablen ersetzt.
Schauen wir uns an, was die einzelnen Platzhalter bewirken:
// %s wird durch einen String-Wert ersetzt (name)
// %d wird durch einen Integer-Wert ersetzt (age)
// %.1f wird durch einen Float-Wert mit 1 Dezimalstelle ersetzt (height)
// %t wird durch einen booleschen Wert ersetzt (true oder false)Die fmt.Printf()-Funktion ersetzt jeden Platzhalter durch die entsprechende Variable, die wir nach dem Format-String angeben. Die Reihenfolge der Variablen muss der Reihenfolge der Platzhalter entsprechen.
Versuchen wir nun ein weiteres Beispiel mit verschiedenen Formatierungsarten:
pi := 3.14159
percentage := 0.75
letter := 'A'
fmt.Printf("Pi: %.2f, Percentage: %.1f%%, Letter: %c\n", pi, percentage*100, letter)Nach der Ausführung dieses Codes wird der Text "Pi: 3.14, Percentage: 75.0%, Letter: A" auf dem Bildschirm angezeigt. Beachten Sie, wie %.2f nur 2 Dezimalstellen für Pi anzeigt, und wir den Prozentsatz mit 100 multiplizieren, um ihn als Prozentwert darzustellen.
Beachten Sie auch die spezielle Sequenz %% im Format-String — so gibt man ein literales %-Zeichen mit fmt.Printf() aus. Ein einzelnes % würde als Beginn eines Platzhalters behandelt werden, daher wird %% verwendet, um es zu maskieren und das Prozentzeichen selbst anzuzeigen.
Aufgabe
EinfachIn dieser Challenge üben Sie die Verwendung der formatierten Ausgabe in Go mit der Funktion `fmt.Printf()`.
Sie haben Informationen über ein Produkt, die in einem bestimmten Format unter Verwendung von Format-Verben angezeigt werden müssen. Die Variablen sind bereits für Sie definiert.
Ihre Aufgabe ist es, `fmt.Printf()` mit den entsprechenden Format-Verben zu verwenden, um die Produktinformationen anzuzeigen:
- Verwenden Sie `%s` für Strings
- Verwenden Sie `%d` für Integer
- Verwenden Sie `%.2f` für Gleitkommazahlen mit 2 Dezimalstellen
- Verwenden Sie `%t` für boolesche Werte
Zeigen Sie die Produktinformationen genau so an, wie es in der erwarteten Ausgabe dargestellt ist.
Spickzettel
Verwenden Sie fmt.Printf(), um die Ausgabe mit Platzhaltern zu formatieren:
fmt.Printf("Name: %s, Age: %d, Height: %.1f\n", name, age, height)Häufige Format-Verben:
%s- String-Wert%d- Ganzzahlwert%.1f- Gleitkommazahl mit 1 Nachkommastelle%.2f- Gleitkommazahl mit 2 Nachkommastellen%t- Boolescher Wert%c- Zeichenwert%%- Literales Prozentzeichen (%)
Die Reihenfolge der Variablen muss mit der Reihenfolge der Platzhalter im Format-String übereinstimmen.
Verwenden Sie \n am Ende des Format-Strings, um nach der Ausgabe in eine neue Zeile zu wechseln.
Probier es selbst
package main
import "fmt"
func main() {
// Produktinformationen
productName := "Wireless Headphones"
productPrice := 79.99
productInStock := true
productID := 12345
// TODO: Verwende fmt.Printf() mit Format-Verben, um die Produktinformationen anzuzeigen:
// Produkt: Wireless Headphones (ID: 12345)
// Preis: $79.99
// Auf Lager: true
//
// Hinweis: Verwende %s für Strings, %d für Integers, %.2f für Floats, %t für Booleans
// Vergiss nicht, \n am Ende jeder Zeile für die richtige Formatierung hinzuzufügen
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Vergleichs- & logische Operatoren
Vergleichsoperatoren - Teil 1Vergleichsoperatoren - Teil 2Logischer UND-OperatorLogischer ODER-OperatorLogischer NICHT-OperatorGrundlagen der OperatorrangfolgeZusammenfassung - Vergleiche anstellen7Kontrollfluss: Schleifen
Die `for`-Schleife erklärtfor-Schleife - Grundlagenfor-Schleife - Nur BedingungDas `break`-SchlüsselwortDas `continue`-SchlüsselwortVerschachtelte SchleifenZusammenfassung - Aktionen wiederholen2Variablen und grundlegende Datentypen
Was ist eine VariableTypinferenz mit `:=`Ganzzahlen (int)GleitkommazahlenBoolesche WerteStringsZero ValuesKonstantenNamenskonventionenZusammenfassung - Variablen und Typen5Grundlagen der Ein- und Ausgabe
Formatierte AusgabeFormat-VerbenTypen ausgebenEinfache Benutzereingaben erhaltenZusammenfassung – Ein- und Ausgabe8Funktionen
Funktionen verstehenEine Funktion deklarierenFunktionen aufrufenFunktionsparameterEinen einzelnen Wert zurückgebenMehrere Werte zurückgebenBenannte RückgabewerteGrundlagen des Funktions-ScopesZusammenfassung – Wiederverwendbaren Code erstellen3Grundlegende Operatoren
Arithmetische OperatorenDivisionsoperatorDer Modulo-OperatorZuweisungsoperatorKombinierte ZuweisungsoperatorenInkrement und DekrementZusammenfassung - Berechnungen6Kontrollfluss: Bedingte Anweisungen
Die `if`-AnweisungDas `else`-SchlüsselwortDas `else if`-SchlüsselwortVariable Shadowing in `if`Variablen initialisierenDie `switch`-AnweisungSwitch mit AusdrückenSwitch ohne AusdruckDas `fallthrough`-SchlüsselwortZusammenfassung – Entscheidungen treffen9Zeiger
Was ist ein Zeiger?Deklarieren von ZeigervariablenDer AdressoperatorDereferenzieren von ZeigernVerwendung von Zeigern in FunktionenNil-ZeigerZusammenfassung – Zeiger verstehen12Zusammengesetzte Typen: Maps
Einführung in MapsDeklarieren von Map-LiteralenErstellen von Maps mit `make`Hinzufügen und Aktualisieren von Key-Value-PaarenZugriff auf Map-WerteÜberprüfen der Existenz von SchlüsselnLöschen von Map-EinträgenMap-LängeIterieren über MapsZusammenfassung – Key-Value-Speicher