முக்கிய உள்ளடக்கத்திற்குச் செல்லவும்
தொகுதி 1 · பாடம் 5 இன் 5பாடத்திட்டத்தில் 5/50~10 min
தொகுதி பாடங்கள் (5/5)

fmt உடன் உள்ளீடு/வெளியீடு

நிலையான நூலகத்தின் fmt தொகுப்பானது அச்சிடுவதற்கான உங்கள் முக்கிய கருவியாகும் கன்சோல், சரங்களை வடிவமைத்தல் மற்றும் வாசிப்பு உள்ளீடு. நீங்கள் பயன்படுத்தியிருந்தால் printf C இல் நீங்கள் வீட்டில் இருப்பதை உணருவீர்கள், ஆனால் சில கூடுதல் சுத்திகரிப்புகளுடன் %v மற்றும் %T வினைச்சொற்களுக்கு நன்றி.

Print, Println, Printf: மூன்று செயல்பாடுகள், மூன்று நடத்தைகள்

Go
fmt.Print("ciao ", "mondo")    // "ciao mondo"  (niente newline finale)
fmt.Println("ciao", "mondo")   // "ciao mondo\n" (newline + spazi tra argomenti)
fmt.Printf("eta=%d\n", 36)     // "eta=36\n"    (format string esplicita)

நீங்கள் எப்போதும் பயன்படுத்தும் வினைச்சொற்கள்

வினைஅது என்ன அச்சிடுகிறதுஉதாரணம்
%v"இயல்புநிலை மதிப்பு" — எந்த வகையிலும் வேலை செய்யும்{Ada 36}
%+v%v போன்று ஆனால் புலப் பெயர்கள் அமைப்புகளில்{Name:Ada Age:36}
%#vமதிப்பின் "Go-syntax" பிரதிநிதித்துவம்main.User{Name:"Ada", Age:36}
%Tமதிப்பின் வகைfloat64
%dஅடிப்படை 10 இல் முழு எண்42
%fமிதவை3.140000
%.2f2 தசமங்களுடன் மிதவை3.14
%sசரம்Ada
%q"மேற்கோள்" சரம் (மேற்கோள்கள் மற்றும் தப்பித்தல்களுடன்)"Ada\n"
%tbooltrue
%xஹெக்ஸாடெசிமல் (சிறிய எழுத்து)2a
%bபைனரி101010
Go
u := struct{ Name string; Age int }{"Ada", 36}
fmt.Printf("%v\n", u)   // {Ada 36}
fmt.Printf("%+v\n", u)  // {Name:Ada Age:36}
fmt.Printf("%T\n", 3.14) // float64

Sprintf: அவற்றை அச்சிடாமல் சரங்களை உருவாக்குதல்

Printf போன்ற அதே இடைமுகம், ஆனால் முடிவு உங்களுக்கு ஒரு string:

Go
msg := fmt.Sprintf("L'utente %s ha %d anni", "Ada", 36)
fmt.Println(msg) // L'utente Ada ha 36 anni

செய்திகள், பதிவுகள் மற்றும் பிழைகளை உருவாக்க நீங்கள் அதை தொடர்ந்து பயன்படுத்துவீர்கள்.

பிழை: சரங்கள் + பிழை மடக்குதல்

fmt.Errorf Printf-பாணி வடிவமைப்புடன் error ஐ உருவாக்குகிறது. உடன் சிறப்பு வினைச்சொல் %w ஏற்கனவே உள்ள பிழையைப் பாதுகாக்க மடிக்கலாம் சங்கிலி (இதை இடைமுகங்கள் தொகுதியில் ஆழமாகப் பார்ப்போம்):

Go
if _, err := os.Open("missing"); err != nil {
    return fmt.Errorf("apertura config: %w", err)
}

உங்கள் முறை

உடற்பயிற்சி#go.m1.l5.e1
முயற்சிகள்: 0ஏற்றுகிறது…

fmt.Println ஐப் பயன்படுத்தி 'ciao mondo' என்ற சரத்தை அச்சிடவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

`fmt.Println` ஒரு சரத்தை எடுத்து புதிய வரியைச் சேர்க்கிறது.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

உடற்பயிற்சி#go.m1.l5.e2
முயற்சிகள்: 0ஏற்றுகிறது…

முழு எண்ணுக்கான %d வினைச்சொல்லைப் பயன்படுத்தி, 'eta=36' ஐத் தொடர்ந்து புதிய வரியை அச்சிட fmt.Printf ஐப் பயன்படுத்தவும்.

எடிட்டரை ஏற்றுகிறது…
குறிப்பைக் காட்டு

`Printf` ஒரு புதிய வரியைச் சேர்க்கவில்லை: நீங்கள் வடிவமைப்பு சரத்தில் `\\n` ஐ சேர்க்க வேண்டும்.

3 முயற்சிகளுக்குப் பிறகு தீர்வு கிடைக்கும்

Quiz#go.m1.l5.e3
தயார்

எந்த வினைச்சொல் ஒரு மதிப்பின் டைனமிக் வகையை அச்சிடுகிறது?

Go
fmt.Printf("?\n", 3.14)
பதில் விருப்பங்கள்

மறுபரிசீலனை

  • Print/Println/Printf இடைவெளிகளிலும் புதிய வரிகளிலும் வேறுபடுகின்றன.
  • %v என்பது எந்த வகையிலும் வேலை செய்யும் வைல்டு கார்டு; %+v புலப் பெயர்களைக் காட்டுகிறது.
  • %T வகையை அச்சிடுகிறது (விரைவான பிழைத்திருத்தத்திற்குப் பயன்படும்).
  • Sprintf சரங்களை உருவாக்குகிறது; Errorf மடக்குதல் மூலம் பிழைகளை உருவாக்குகிறது (%w).
  • Printf புதிய வரியைச் சேர்க்கவில்லை: வடிவமைப்பு சரத்தில் நீங்களே எழுதுங்கள்.