Python yra keletas būdų, kaip pateikti programos išvestį. Duomenys gali būti atspausdinti žmogui suprantama forma arba įrašyti į failą, kad būtų galima naudoti ateityje, ar net kita nurodyta forma. Vartotojai dažnai nori daugiau valdyti išvesties formatavimą nei tiesiog spausdinti tarpais atskirtas reikšmes.
Išvesties formatavimas Python
Yra keli būdai formatuoti išvestį naudojant eilutės metodą Python .
- Naudojant String Modulo operatorių (%)
- Naudojant formatavimo metodą
- Styginių metodo naudojimas
- Python formato konvertavimo taisyklė
Išvesties formatavimas naudojant String Modulo operatorių (%)
The % operatoriaus modulis taip pat gali būti naudojamas eilučių formatavimui. Jis interpretuoja kairįjį argumentą panašiai kaip printf() stiliaus formatas, kaip C kalbos eilutėse, kurios turi būti taikomos dešiniajam argumentui. Python sistemoje nėra funkcijos printf(), bet yra senovinės printf funkcijos Python . Šiuo tikslu modulo operatorius % yra perkraunamas eilučių klasės, kad būtų galima atlikti eilutės formatavimą. Todėl ji dažnai vadinama eilutės modulo (arba kartais net vadinama moduliu) operatoriumi. Stygos modulo operatorius ( % ) vis dar yra Python (3.x) ir yra plačiai naudojamas. Tačiau šiais laikais senasis formatavimo stilius yra pašalintas iš kalbos.
Python3
# Python program showing how to use string modulo operator(%)> print>(>'Geeks : %2d, Portal : %5.2f'> %> (>1>,>05.333>))> print>(>'Total students : %3d, Boys : %2d'> %> (>240>,>120>))># print integer value> print>(>'%7.3o'> %> (>25>))># print octal value> print>(>'%10.3E'> %> (>356.08977>))># print exponential value> |
>
>
Išvestis
Geeks : 1, Portal : 5.33 Total students : 240, Boys : 120 031 3.561E+02>

Išvesties formatavimas naudojant „Modulo Operator“.
Mūsų pavyzdyje yra du iš jų: %2d ir %5.2f. Bendra formato rezervuotos vietos sintaksė yra tokia:
%[flags][width][.precision]type>
Pažvelkime į vietos žymeklius mūsų pavyzdyje.
- Pirmoji rezervuota vieta „%2d“ naudojama pirmajam mūsų eilės komponentui, t. y. sveikajam skaičiui 1. Jis bus išspausdintas su 2 simboliais, o kadangi 1 susideda tik iš vieno skaitmens, išvestis užpildoma 1 tuščiu priekyje.
- Antroji rezervuota vieta „%5.2f“ skirta slankiajam skaičiui. Kaip ir kiti vietos rezervavimo ženklai, jis įvedamas su % simboliu. Nurodomas bendras skaitmenų, kuriuos turi sudaryti eilutė, skaičius, įskaitant dešimtainį kablelį ir visus skaitmenis prieš ir po kablelio.
- Mūsų slankusis skaičius 05.333 yra suformatuotas 5 simboliais ir 2 tikslumu, pažymėtu skaičiumi po „.“ vietos rezervuotoje. Paskutinis simbolis „f“ rodo, kad vietos rezervavimo ženklas reiškia slankiąją reikšmę.
Išvesties formatavimas naudojant formatavimo metodą
Metodas format() buvo pridėtas Python (2.6). Stygų formatavimo metodas reikalauja daugiau rankų pastangų. Vartotojai naudoja {} norėdami pažymėti, kur kintamasis bus pakeistas, ir gali pateikti išsamias formatavimo direktyvas, tačiau vartotojas taip pat turi pateikti formatuojamą informaciją. Šis metodas leidžia sujungti elementus išvestyje naudojant pozicinį formatavimą. Pavyzdžiui -
1 pavyzdys: Kodas paaiškina įvairius Python eilučių formatavimo būdus. Reikšmės yra arba aiškiai pateiktos, arba nurodomos pagal tvarką, kuria jos rodomos format() procedūroje. F-Strings leidžia naudoti riestinius skliaustus ir f priešdėlį, norint įterpti išraiškas eilutėje pažodiniai žodžiai. Įvertinamos f-stygų išraiškos ir pakeičiamos atitinkamos jų reikšmės.
Python3
vlc atsisiųsti youtube vaizdo įrašus
print>(>'I love {} for '{}!''>.>format>(>'Geeks'>,>'Geeks'>))> # using format() method and referring a position of the object> print>(>'{0} and {1}'>.>format>(>'Geeks'>,>'Portal'>))> print>(>'{1} and {0}'>.>format>(>'Geeks'>,>'Portal'>))> print>(f>'I love {'Geeks'} for '{'Geeks'}!''>)> # using format() method and referring a position of the object> print>(f>'{'Geeks'} and {'Portal'}'>)> |
>
>
Išvestis
I love Geeks for 'Geeks!' Geeks and Portal Portal and Geeks I love Geeks for 'Geeks!' Geeks and Portal>
Skliausteliuose ir juose esantys simboliai (vadinami formato laukus ) pakeičiami objektais, perduotais format() metodu. Skaičius skliausteliuose gali būti naudojamas nurodant objekto, perduoto formatu() metodu, padėtį.
2 pavyzdys: Naudojant padėties parametrus ir pavadintą argumentą („other“) pirmoje eilutėje, į eilutės šabloną pridedamos reikšmės „Geeks“, „For“ ir „Geeks“.„Geeks:12, Portal: 0,55“ spausdinama, o pirmoji reikšmė rodoma kaip 2 skaitmenų sveikas skaičius, o antrasis skaičius yra 2 skaitmenys po kablelio ir 8 bitų plotis. Metodo format() pavadinti argumentai, žymimi konkrečiomis etiketėmis („a“ ir „p“) skaičiams „453“ ir „59.058“,
Python3
prijunkite java duomenų bazę
# combining positional and keyword arguments> print>(>'Number one portal is {0}, {1}, and {other}.'> >.>format>(>'Geeks'>,>'For'>, other>=>'Geeks'>))> # using format() method with number> print>(>'Geeks :{0:2d}, Portal :{1:8.2f}'>.> >format>(>12>,>00.546>))> # Changing positional argument> print>(>'Second argument: {1:3d}, first one: {0:7.2f}'>.> >format>(>47.42>,>11>))> print>(>'Geeks: {a:5d}, Portal: {p:8.2f}'>.> >format>(a>=> 453>, p>=> 59.058>))> |
>
>
Išvestis
Number one portal is Geeks, For, and Geeks. Geeks :12, Portal : 0.55 Second argument: 11, first one: 47.42 Geeks: 453, Portal: 59.06>
Šioje diagramoje su naudojimo pavyzdžiu parodyta, kaip formatavimo metodas veikia su padėties parametrais:

Išvesties formatavimas naudojant formatavimo metodą
3 pavyzdys: Kodas parodo, kaip naudoti žodynus naudojant Python format() metodą. Pirmajame pavyzdyje esantis žodyno skirtukas turi raktus ir susijusias reikšmes. Format() metodas naudoja indeksavimą, kad įtrauktų reikšmes į eilutės šabloną. Antrame pavyzdyje kaip duomenys naudojami pavadinti raktai žodyne.
Python3
tab>=> {>'geeks'>:>4127>,>'for'>:>4098>,>'geek'>:>8637678>}> # using format() in dictionary> print>(>'Geeks: {0[geeks]:d}; For: {0[for]:d}; '> >'Geeks: {0[geek]:d}'>.>format>(tab))> data>=> dict>(fun>=>'GeeksForGeeks'>, adj>=>'Portal'>)> print>(>'I love {fun} computer {adj}'>.>format>(>*>*>data))> |
java eilutė į loginę
>
>
Išvestis
Geeks: 4127; For: 4098; Geeks: 8637678 I love GeeksForGeeks computer Portal>
Išvesties formatavimas naudojant eilutės metodą
Ši išvestis suformatuota naudojant stygų metodas t.y. pjaustymo ir sujungimo operacijos. Eilutės tipas turi keletą metodų, kurie padeda suformatuoti išvestį įmantresniu būdu. Kai kurie metodai, padedantys formatuoti išvestį, yra str.light() , str.rjust() , ir str.centre()
Python3
cstr>=> 'I love geeksforgeeks'> # Printing the center aligned string with fillchr> print>(>'Center aligned string with fillchr: '>)> print>(cstr.center(>40>,>'#'>))> # Printing the left aligned string with '-' padding> print>(>'The left aligned string is : '>)> print>(cstr.ljust(>40>,>'-'>))> # Printing the right aligned string with '-' padding> print>(>'The right aligned string is : '>)> print>(cstr.rjust(>40>,>'-'>))> |
>
>
Išvestis
Center aligned string with fillchr: ##########I love geeksforgeeks########## The left aligned string is : I love geeksforgeeks-------------------- The right aligned string is : --------------------I love geeksforgeeks>
Python formato konvertavimo taisyklė
Šioje lentelėje pateikiamos standartinės formato konvertavimo gairės, naudojamos Python format() funkcijai.
| Konversija | Reikšmė |
|---|---|
| d | Sveikasis dešimtainis skaičius autocad tempimo komanda |
| b | Dvejetainis formatas |
| O | aštuntainis formatas |
| in | Pasenęs ir lygiavertis „d“ |
| x arba X | Šešioliktainis formatas |
| e arba E | Eksponentinis žymėjimas |
| f arba F | Slankaus kablelio kablelis |
| g arba G | Bendras formatas |
| c | Vienas veikėjas |
| r | Eilučių formatas (naudojant repr()) |
| s | Eilutės formatas(naudojant str())) |
| % | Procentas |