Python String format() Wyjaśnij na PRZYKŁADACH
Co to jest Python Format ciągu()?
Python Format ciągu() to funkcja używana do zastępowania, zastępowania lub konwertowania ciągu znaków na symbole zastępcze z prawidłowymi wartościami w końcowym ciągu. Jest to wbudowana funkcja Python Klasa string, która zwraca sformatowany string jako wynik. Symbole zastępcze wewnątrz stringa są zdefiniowane w nawiasach klamrowych.
Na przykład „Witamy w Guru99 {}”.format('wartość tutaj').
Składnia funkcji format() w Python
templatestring.format(val1, val2...)
parametry
wartość1, wartość2… : Wartości, które należy zastąpić w podanym ciągu szablonu, który ma symbole zastępcze w postaci nawiasów klamrowych {}. Symbole zastępcze mogą być ciągiem, parą klucz/wartość, liczbami całkowitymi, liczbami zmiennoprzecinkowymi, znakami itp.
Wartość zwracana
Zwróci ona końcowy ciąg znaków, w którym w miejsce symboli zastępczych podanych w nawiasach klamrowych zostaną zastąpione prawidłowe wartości.
Symbole zastępcze
Symbole zastępcze w ciągu szablonu są reprezentowane za pomocą nawiasów klamrowych, np. {}. Symbol zastępczy może być pusty {} lub może mieć zmienną, np. {name}, lub może mieć indeks liczbowy, np. {0}, {1} itd.
Jak działa format ciągu ()?
Kurs Python Format ciągu() Metoda przeskanuje oryginalne ciągi w poszukiwaniu symboli zastępczych. Symbole zastępcze mogą być pustymi nawiasami klamrowymi ({}), argumentami pozycyjnymi, tzn. ciąg może mieć symbole zastępcze o indeksie 0, 1, np. {0}, {1} itd.
W przypadku argumentów słów kluczowych zmienna name będzie obecna wewnątrz nawiasów klamrowych, np. {name}, {age}. W przypadku pustych nawiasów klamrowych wartości z formatu zostaną zastąpione wewnątrz nawiasów klamrowych w kolejności.
Pierwsza wartość zostanie zastąpiona pierwszym pustym nawiasem klamrowym, a po niej następnym. W przypadku argumentów pozycyjnych indeks zacznie się od 0 i tak dalej. Wartości będą dostępne w formacie oddzielonym przecinkami i cyfrą 0th wartość będzie wskazywać pierwszą wartość w formacie i tak dalej.
W przypadku argumentów słów kluczowych, tj. gdy używasz zmiennej wewnątrz symboli zastępczych, możesz ustawić kolejność wartości w formacie według potrzeb.
Kolejność nie ma tutaj znaczenia, ponieważ wartości zostaną zastąpione w oparciu o nazwę zmiennej obecną w format(). Oto kilka przykładów wykorzystania symboli zastępczych wewnątrz ciągu jako pustych, pozycyjnych i wykorzystujących słowa kluczowe lub zmienne.
Przykład: pusty symbol zastępczy zastąpiony wartością ciągu
W poniższym przykładzie ciąg ma puste nawiasy klamrowe ({}). Wartość podana w formacie zostanie zastąpiona wewnątrz nawiasów klamrowych ({}).
Wartość, którą chcemy zastąpić, to ciąg znaków.
Przykład:
Korzystanie z formatowania ciągów w Python, chcemy, aby nawiasy klamrowe ({}) zostały zastąpione wartością ciągu. Wartość jest podawana do format(“Guru99”). Podczas wykonywania nawiasy klamrowe {} są zastępowane wartością Guru99, a końcowy ciąg zostanie wyświetlony jako Welcome to Guru99 tutorials.
print ("Welcome to {} tutorials".format("Guru99"))
Wyjście:
Welcome to Guru99 tutorials
Przykład: pusty symbol zastępczy zastąpiony wartością numeryczną
W poniższym przykładzie chcemy, aby wartość liczbowa została zastąpiona wewnątrz oryginalnego ciągu. Nawiasy klamrowe ({}) są dodawane w miejscu, w którym potrzebujesz wartości liczbowej. Po wykonaniu puste nawiasy klamrowe ({}) są zastępowane wartością liczbową.
Przykład:
Możesz również użyć format(), aby wstawić liczby do swojego ciągu. Przykład pokaże, jak zastąpić pusty symbol zastępczy {} liczbą 99 obecną w format().
print ("Welcome to Guru{} Tutorials".format("99"))
Wyjście:
Welcome to Guru99 Tutorials
Przykład: użycie argumentów zmiennych lub słów kluczowych w symbolu zastępczym
Można również używać zmiennych wewnątrz nawiasów klamrowych, jak pokazano w poniższym przykładzie. Zmienne są definiowane wewnątrz format(). Dlatego po wykonaniu, wartość przypisana do zmiennej jest zastępowana wewnątrz oryginalnego ciągu.
Przykład:
Możesz używać zmiennych w nawiasach klamrowych, na przykład {name} {num}. Wartości dla zmiennej name i num są dostępne w formacie ie format(name=”Guru”, num=”99″). Wartości podane dla name i num zostaną zastąpione wewnątrz {name} i {num}.
print ("Welcome to {name}{num} Tutorials".format(name="Guru", num="99"))
Wyjście:
Welcome to Guru99 Tutorials
Przykład: użycie argumentów indeksowych lub pozycyjnych wewnątrz symbolu zastępczego
Wartości można zastąpić za pomocą indeksów takich jak 0, 1, 2 wewnątrz symboli zastępczych. Wartość zostanie wybrana w kolejności z format(), jak pokazano w poniższym przykładzie.
Przykład:
print ("Welcome to {0}{1} Tutorials".format("Guru","99"))
Wyjście:
Welcome to Guru99 Tutorials
Przykład: użycie wielu symboli zastępczych w ciągu znaków
W tym przykładzie użyjemy wielu pustych symboli zastępczych.
Przykład:
Ciąg użyty w przykładzie ma wiele pustych symboli zastępczych, a każdy symbol zastępczy będzie odnosił się do wartości wewnątrz format(). Pierwsza wartość zostanie zastąpiona pierwszym symbolem zastępczym i tak dalej.
print ("{} is {} new kind of {} experience!".format("Guru99", "totally","learning"))
Wyjście:
Guru99 is totally new kind of learning experience!
Formatowanie wewnątrz symboli zastępczych
Widziałeś, że możliwe jest, aby symbol zastępczy był pusty, ze zmienną lub indeksem. Możliwe jest również złożenie wniosku Python Formatowanie ciągu wewnątrz symbolu zastępczego.
Oto lista formatów
utworzony | Opis | Przykład |
---|---|---|
:d |
Da wynik w formacie dziesiętnym, jeśli zostanie użyty wewnątrz symbolu zastępczego | print("The binary to decimal value is : {:d}".format(0b0011))
Wyjście: The binary to decimal value is : 3 |
:b |
Da wynik w formacie binarnym, jeśli zostanie użyty wewnątrz symbolu zastępczego | print("The binary value is : {:b}".format(500))
Wyjście: The binary value is : 111110100 |
:e |
Da wynik w formacie naukowym, jeśli zostanie użyty wewnątrz symbolu zastępczego, wykładnik e na wyjściu będzie pisany małymi literami. | print("The scientific value is : {:e}".format(40))
Wyjście: The scientific format value is : 4.000000e+01 |
:E |
Da wynik w formacie naukowym, jeśli zostanie użyty wewnątrz symbolu zastępczego, wykładnik E na wyjściu będzie wielkimi literami | print("The scientific value is : {:E}".format(40))
Wyjście: The scientific value is : 4.000000E+01 |
:f |
Spowoduje to wyświetlenie formatu liczb stałoprzecinkowych. Domyślnie otrzymasz wynik w postaci dowolnej liczby z sześcioma miejscami po przecinku. Jeśli potrzebujesz maksymalnie 2 miejsc po przecinku, użyj go jako. 2f tj. kropka (.) przed 2f | print("The value is : {:f}".format(40))
Wyjście: The value is : 40.000000 Przykład: Wyświetlanie wyników do dwóch miejsc po przecinku.
Wyjście: The value is: 40.00 |
:o |
Spowoduje to wyświetlenie formatu ósemkowego | print("The value is : {:o}".format(500))
Wyjście: The value is : 764 |
:x |
Spowoduje to wyświetlenie formatu szesnastkowego małymi literami | print("The value is : {:x}".format(500))
Wyjście: The value is : 1f4 |
:X |
Spowoduje to wyświetlenie formatu szesnastkowego wielkimi literami. | print("The value is : {:X}".format(500))
Wyjście: The value is : 1F4 |
:n |
Spowoduje to wyświetlenie formatu liczb. | print("The value is : {:n}".format(500.00))
Wyjście: The value is : 500 |
:% |
To da wynik w formacie procentowym. Domyślnie daje 6 miejsc po przecinku dla wartości procentowej, jeśli nie chcesz żadnej wartości dziesiętnej, możesz użyć kropki z 0, tj. (:.0%). |
print("The value is : {:%}".format(0.80))
Wyjście: The value is : 80.000000% Ten przykład pokazuje, jak pominąć miejsca dziesiętne, używając {:.0%} wewnątrz symbolu zastępczego.
The value is: 80% |
:_ |
Spowoduje to wyświetlenie znaku podkreślenia jako separatora tysięcy. Jest dostępny w Pythonie 3.6+. | print("The value is {:_}".format(1000000))
Wyjście: The value is : 1_000_000 |
:, |
Spowoduje to wyświetlenie przecinka jako separatora tysięcy | print("The value is : {:,}".format(1000000))
Wyjście: The value is : 1,000,000 Dodawany jest przecinek(,) jako separator tysięcy, jak pokazano na wynikach. |
: |
Spowoduje to dodanie spacji przed każdą liczbą dodatnią | Ten przykład pokazuje, jak dodać spację lub uzupełnienie przed podaną liczbą. Liczba 5 wskazuje liczbę spacji, jaką chcesz umieścić przed liczbą.
Wyjście: The value is: 40 |
:- |
Spowoduje to dodanie znaku minus przed liczbami ujemnymi | Przykład pokazuje, jak uzyskać wynik ze znakiem minus (-) przed liczbą za pomocą {:-}.
Wyjście: The value is: -40 |
:+ |
Możesz użyć znaku plus, aby wskazać, że liczba jest dodatnia | Przykład pokazuje, jak uzyskać wynik ze znakiem plus (+) przed liczbą za pomocą {:+}.
Wyjście: The value is: +40 |
:= |
Równość służy do umieszczenia znaku +/- po lewej stronie. | Przykład pokazuje, jak uzyskać wynik ze znakiem plus (+/-) przed znakiem równości za pomocą {:=}.
Wyjście: The value is -40 |
:^ |
Spowoduje to wyśrodkowanie wyniku końcowego | Przykład pokazuje użycie {:^} do wyśrodkowania tekstu. Liczba 10 służy do dodania 10 spacji, aby po zamianie wartość była wyrównana do środka.
Wyjście: The value 40 is a positive value Tutaj możesz użyć 10, co spowoduje dodanie 10 spacji w końcowym tekście, a wartość do zastąpienia zostanie wyśrodkowana pomiędzy 10 spacjami. Spacje 10 są dodawane tylko po to, aby pokazać wyrównanie do środka zastąpionej wartości. |
:> |
Spowoduje to wyrównanie końcowego wyniku | Spację 10 dodaje się za pomocą (:>10), a zastępowana wartość jest wyrównana do prawej.
Wyjście: The value 40 is positive value |
:< |
Spowoduje to wyrównanie końcowego wyniku | Spację 10 dodaje się za pomocą (:<10), a zastępowana wartość jest wyrównana do lewej.
Wyjście: The value 40 is positive value |
Używanie klasy z format()
W tym przykładzie tworzymy klasę i używamy obiektu klasy w formacie .format Python metoda. Symbole zastępcze będą odnosić się do właściwości klasy lub członków korzystających z obiektu klasy.
Przykład:
Klasa jest wywoływana wewnątrz format(c=MojaKlasa()). Obiekt c będzie zawierał odwołanie do właściwości i metod wewnątrz klasy MojaKlasa().
class MyClass: msg1="Guru" msg2="Tutorials" print("Welcome to {c.msg1}99 {c.msg2}!".format(c=MyClass()))
Wyjście:
Welcome to Guru99 Tutorials!
Używanie słownika z format()
Możliwe jest również użycie słownika wewnątrz format(), jak pokazano w poniższym przykładzie:
my_dict = {'msg1': "Welcome", 'msg2': 'Guru99'} print("{m[msg1]} to {m[msg2]} Tutorials!".format(m=my_dict))
Wyjście:
Welcome to Guru99 Tutorials!
Podstawianie zmiennych dopełniających
Używając metody string.format(), możesz dodać dopełnienie i spację, używając symboli zastępczych wewnątrz ciągu.
Przykład:
W poniższym przykładzie dodamy spację wewnątrz Placeholdera za pomocą format(). Aby dodać spację, należy określić liczbę spacji w nawiasach klamrowych po dwukropku(:). Więc Placeholder będzie wyglądał tak {:5}.
print("I have {:5} dogs and {:5} cat".format(2,1))
Wyjście:
I have 2 dogs and 1 cat
Możesz także podać indeks wewnątrz symbolu zastępczego, na przykład: {0:5}, gdzie 0 będzie odnosić się do pierwszej wartości w formacie.
print("I have {0:5} dogs and {1:5} cat".format(2,1))
Wyjście:
I have 2 dogs and 1 cat
Podsumowanie
- Python klasa string udostępnia nam ważne wbudowane polecenie o nazwie format(), które pomaga nam zastępować, zastępować lub konwertować ciąg znaków za pomocą symboli zastępczych z prawidłowymi wartościami w końcowym ciągu.
- Elementy zastępcze wewnątrz modułu string Python są zdefiniowane w nawiasach klamrowych, np. „Witamy w Guru99 {}”.format('wartość tutaj').
- Symbol zastępczy może być pusty {} lub może zawierać zmienną np. {name} lub może mieć indeks liczbowy, np. {0}, {1} itd.
- Możesz skorzystać z formatowania ciągów w Python wewnątrz symboli zastępczych, które mogą pomóc w dodaniu dopełnienia, wyrównaniu do środka, a także pomóc w formatowaniu liczb.