Niezależnie od tego, czy jest to zapytanie do bazy danych, czy wyniki operacji matematycznych, metoda formatu ciągu znaków Pythona oferuje bardziej dynamiczny i atrakcyjny sposób prezentowania wyników użytkownikowi.

Przyjrzyjmy się, jak str.format() funkcja działa w Pythonie. Dowiesz się również, jak wykorzystać ten format we własnych programach.

Jak działa Python String format()?

Python str.format() funkcja pozwala wstawić wyniki w dowolnym miejscu w ciągu.

Działa poprzez przydzielanie miejsca na wyniki w ciągu za pomocą nawiasów klamrowych. Następnie zapisuje dane wyjściowe do tej pozycji za pomocą format() metoda.

Ciągi poza nawiasem klamrowym to tak zwane teksty dosłowne.

Jak używać metody Python String format()

ten str.format() funkcja przyjmuje wartość i opcjonalny specyfikator formatu ciągu.

Oto jak wygląda ogólna składnia:

str.format (wartość, format_spec)

Przyjrzyjmy się teraz bardziej praktycznym przykładom wykorzystania tej metody łańcuchowej Pythona.

1. Wstaw wartość w określonej pozycji

instagram viewer

Oto podstawowy przykład, jak wstawić wartość do ciągu za pomocą str.format() metoda:

Koszt = 45
formattedMethod = "Ten towar kosztuje tylko {} dolarów"
drukuj (formattedMethod.format (koszt))
Wyjście: ten towar kosztuje tylko 45 dolarów

Powyższy kod jest taki sam jak:

formattedMethod = "Ten towar kosztuje tylko {} dolarów"
drukuj (formattedMethod.format (45))
Wyjście: ten towar kosztuje tylko 45 dolarów

2. Wstaw wiele wyjść do ciągu

Możesz także wstawić wiele wyników do ciągu. Oto jak:

y = 7*8
f = 5+5
g = 0
a = "Wartość y to {}, podczas gdy f to {}. Nikt nie widzi {}.format (y, f, g)
drukuj (a)
Dane wyjściowe: wartość y wynosi 56, podczas gdy f wynosi 10. Nikt nie widzi 0

3. Użyj nawiasów klamrowych, aby umieścić wyjścia w dedykowanych nawiasach klamrowych

Jeśli chcesz umieścić którykolwiek z wyników w nawiasie klamrowym, to proste. Wystarczy wprowadzić dwa dodatkowe uchylne klamry.

Na przykład powiedz, że chcesz tak w dedykowanym nawiasie klamrowym:

a = "Wartość y to {{{}}}, podczas gdy f to {}. Nikt nie widzi {}.format (y, f, g)
drukuj (a)
Dane wyjściowe: Wartość y wynosi {56}, podczas gdy f wynosi 10. Nikt nie widzi 0

4. Wartości wyjściowe z listy

Możesz wybrać określone wartości z listy i wstawić je do ciągu:

mojaLista = [10, 2, 4, 6]
print(("Pierwszy to {} a trzeci to {}").format (myList[0], myList[2]))
Wyjście: Pierwszy to 10, a trzeci to 4

Aby uniknąć powtórzeń w ciągu .format() nawiasy, można ustawić specyfikator formatu tak, aby wskazywał na pojedynczą zmienną.

Oto jak to zrobić:

mojaLista = [10, 2, 4, 6]
print(("Pierwszy to {TwojaLista[0]}, a trzeci to {TwojaLista[2]}").format (TwojaLista = mojaLista))
Wyjście: Pierwszy to 10, a trzeci to 4

Powyższy przykład dotyczy również innych przykładów, które omówiliśmy wcześniej. Możesz więc bawić się nimi za pomocą tej sztuczki.

5. Wstaw wartości ze słownika

Podobnie, jak w poprzedniej sekcji, możesz użyć str.format() metoda wstawiania wartości słownikowej do ciągu:

myDiction = {"Dziesięć":10, "Dwa":2, "Cztery":4, "Sześć":6}
print(("Pierwszy to {} a trzeci to {}").format (myDiction["Dziesięć"], myDiction["Cztery"]))
Wyjście: Pierwszy to 10, a trzeci to 4

Związane z: Jak przekonwertować listę na słownik w Pythonie?

A jeśli chcesz skorzystać ze sztuczki z poprzedniej sekcji:

myDiction = {"Dziesięć":10, "Dwa":2, "Cztery":4, "Sześć":6}
print(("Pierwszy to {Dziesięć}, a trzeci to {Cztery}").format(**myDiction))
Wyjście: Pierwszy to 10, a trzeci to 4

Możesz również napisać powyższy kod jako:

print(("Pierwszy to {d[Dziesięć]}, a trzeci to {d[Cztery]}").format (d=myDiction))
Wyjście: Pierwszy to 10, a trzeci to 4

6. Wstaw wyjście funkcji do ciągu

Jeśli chcesz pokazać wyjście funkcji w ciągu:

def difNums (a, b):
jeśli a > b:
zwróć a - b
w przeciwnym razie:
return return "Za pomocą tej funkcji nie można odjąć {} od {}".format (a, b)
print(("Cześć: {}").format (difNums (2, 6)))
Wyjście: Hej tam: Nie możesz odjąć 2 od 6 za pomocą tej funkcji

Korzystanie ze specyfikatorów formatu ciągu znaków w Pythonie

Specyfikator formatu pozwala wybrać sposób przetwarzania formatu. Jak wspomniano wcześniej, jest to opcjonalny parametr, który jest dostarczany z str.format().

Korzystając z tej opcji, możesz wyrównać wyniki, skrócić długie łańcuchy, pogrupować wyniki lub zaokrąglić liczbę całkowitą do określonej liczby cyfr znaczących, a nawet więcej.

Często będziesz pisać specyfikatory formatu w nawiasach klamrowych. Ale możesz też podać je wyraźnie wewnątrz .format() nawias.

Przejdźmy dalej i zobaczmy niektóre z jego przypadków użycia.

7. Wyrównaj wyjście ciągu

Możesz użyć większego (>) znak, aby wyrównać ciąg znaków do prawej:

print("Witaj {:>15}".format (12734589))
Wyjście: Witam 12734589

Możesz również wyrównać tekst do środka, jeśli chcesz:

print("Witaj {:^15}".format (12734589))
Wyjście: Witam 12734589

Sformatujmy dalej powyższe dane wyjściowe. Na przykład możesz dołączyć podkreślenia, aby zobaczyć dopełnienie po obu stronach wyniku w postaci ciągu:

print("Witaj {:_^15}".format (12734589))
Wyjście: Witaj ___12734589____

Ale jak wspomniano wcześniej, możesz określić specyfikator formatu jawnie jako parametr w obrębie str.format().

Tak więc poprzedni kod wygląda w tym przypadku tak:

print("Witaj {:{g}}".format (12734589, g = "_^15"))
Wyjście: Witaj ___12734589____

Zachęcamy do przepisania innych przykładów, korzystając z powyższej opcji.

8. Formatuj dane wyjściowe do określonej liczby znaczących cyfr

Możesz również chcieć zwrócić określoną liczbę cyfr znaczących do obliczeń za pomocą .format() metoda.

Przykładowy kod poniżej, na przykład, zaokrągla wynik działania matematycznego do jednej znaczącej liczby dziesiętnej:

calcprofitPerc = ((45 - 20)/45)*100
formattedOutput = "Nasz zysk z tego wynosi {profit: .1f}%"
print (formattedOutput.format (profit = calcprofitPerc))
Wynik: Nasz zysk na tym wynosi 55,6%

9. Obetnij długie struny

Chociaż obcinanie tekstu może wydawać się niepraktyczne, nie możesz powiedzieć, gdzie możesz go potrzebować.

Oto jak odciąć część wyjściowego ciągu za pomocą str.format() funkcjonować:

print(("Obetnij to do pierwszych 3 alfabetów: {:.3}").format("idowuomisola"))
Wyjście: Skróć to do pierwszych 3 alfabetów: ido

10. Oddzielna grupa liczb przy użyciu kryteriów

Grupę liczb możesz oddzielić za pomocą podkreślenia lub przecinka:

print("Oddzielone podkreśleniem: {:{g}}".format (12734589, g="_"))
print("Oddzielone przecinkami: {:{g}}".format (12734589, g=","))
Wyjście:
Oddzielone podkreśleniem: 12_734_589
Oddzielone przecinkiem: 12 734 589

Związane z:Jak podzielić ciąg w Pythonie

Ponadto możesz określić grupę liczb, które chcesz leczyć, używając jego klucza:

print("Pierwsze liczby podkreślone: ​​{0:{g}}".format (12734589, 123674, 662772, g="_"))
print("Trzecie liczby przecinkami: {2:{g}}".format (12734589, 123674, 662772, g=","))
Wyjście:
Pierwsze cyfry podkreślone: ​​12_734_589
Trzecie liczby przecinkiem: 662,772

Ładne prezentowanie danych wyjściowych za pomocą metody Python String format()

Jednym ze sposobów wyróżnienia programu jest sposób prezentowania wyników i zapytań. Niewątpliwie metoda formatu ciągu znaków Pythona oferuje czystszy sposób na wyprowadzanie wyników. W przeciwieństwie do poprzedniej metody modulo ze starych wersji Pythona, nowy format ciągu wprowadzony w Pythonie 3 jest bardziej czytelny i przyjazny dla człowieka.

UdziałĆwierkaćE-mail
Uczysz się Pythona? Oto jak manipulować strunami

Używanie i manipulowanie łańcuchami w Pythonie może wydawać się trudne, ale jest zwodniczo proste.

Czytaj dalej

Powiązane tematy
  • Programowanie
  • Programowanie
  • Pyton
  • Języki programowania
O autorze
Idowu Omisola (99 opublikowanych artykułów)

Idowu pasjonuje się każdą inteligentną technologią i produktywnością. W wolnych chwilach bawi się kodowaniem, a gdy się nudzi, przechodzi na szachownicę, ale od czasu do czasu uwielbia też oderwać się od rutyny. Jego pasja do pokazywania ludziom drogi do nowoczesnych technologii motywuje go do pisania więcej.

Więcej od Idowu Omisola

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować