Beispiel (Grundform)
'{}Das Wetter am Bahnhof ist sonnig'.format('Shibuya')
#Ausgabe
#'Das Wetter am Bahnhof Shibuya ist sonnig'
Beispiel (keine Indexnummer)
'{}Das Wetter am Bahnhof ist sonnig'.format('Shibuya','Shinjuku','Mejiro','Ikebukuro')
#Ausgabe
#'Das Wetter am Bahnhof Shibuya ist sonnig'
Beispiel (Indexnummer 0)
'{0}Das Wetter am Bahnhof ist sonnig'.format('Shibuya','Shinjuku','Mejiro','Ikebukuro')
#Ausgabe
#'Das Wetter am Bahnhof Shibuya ist sonnig'
Beispiel (Indexnummer 1)
'{1}Das Wetter am Bahnhof ist sonnig'.format('Shibuya','Shinjuku','Mejiro','Ikebukuro')
#Ausgabe
#'Das Wetter am Bahnhof Shinjuku ist sonnig'
Beispiel (Indexnummer 4)
'{4}Das Wetter am Bahnhof ist sonnig'.format('Shibuya','Shinjuku','Mejiro','Ikebukuro')
#Ausgabe(Error)
#IndexError: Replacement index 4 out of range for positional args tuple
Ein Fehler tritt auf, wenn keine Daten vorhanden sind, die der Indexnummer entsprechen.
Beispiel (ein Argument mehrmals aufrufen)
'{0}Wetter.{0}Station,{0}Das Wetter am Bahnhof ist sonnig'.format('Shibuya')
#Ausgabe
#'Das Wetter in Shibuya. Das Wetter in Shibuya Ward und Shibuya Station ist sonnig'
Ein Fehler tritt auf, wenn für die Indexnummer nicht 0 angegeben ist. Weil die Indexnummern in {} automatisch in der Reihenfolge von 0 gesetzt werden.
Beispiel (Fehlerfall)
'{}Wetter.{}Station,{}Das Wetter am Bahnhof ist sonnig'.format('Shibuya')
#Ausgabe(Error)
#IndexError: Replacement index 1 out of range for positional args tuple
Beispiel (mehrere Argumente, keine Nummer angegeben)
'{}Wetter.{}Station,{}Das Wetter am Bahnhof ist sonnig'.format('AAAA','BBBB','CCCC','DDDD')
#Ausgabe
#'AAAA Wetter. Das Wetter in BBBB Ward und CCCC Station ist sonnig'
Die Indexnummer wird automatisch eingestellt
Beispiel (mehrere Argumente, Nummer angegeben ①)
'{0}Wetter.{1}Station,{2}Das Wetter am Bahnhof ist sonnig'.format('AAAA','BBBB','CCCC','DDDD')
#Ausgabe
#'AAAA Wetter. Das Wetter in BBBB Ward und CCCC Station ist sonnig'
Das Ergebnis ist das gleiche wie ohne Nummer.
Beispiel (mehrere Argumente, Nummer angegeben ②)
'{3}Wetter.{2}Station,{2}Das Wetter am Bahnhof ist sonnig'.format('AAAA','BBBB','CCCC','DDDD')
#Ausgabe
#'DDDD Wetter. Das Wetter in CCCC Ward und CCCC Station ist sonnig'
· In keiner bestimmten Reihenfolge ・ Die gleiche Nummer kann mehrfach eingestellt werden
Beispiel (festgelegt durch Zeichenfolge, numerischen Wert, Variable)
mountain = 'Kitadake'
altitude = '3193'
'{}damit{}Der höchste Berg{}.. Die Höhe ist{}m'.format('Japan',2,mountain,altitude)
#Ausgabe
#'Der zweithöchste Berg Japans ist Kitadake. Die Höhe beträgt 3193m'
・ Zeichenkette: Japan ・ Zahlenwert: 2 -Variable (Zeichenkette): Berg ・ Variable (numerischer Wert): Höhe
Beispiel (Breiteneinstellung)
'{:2}Legen Sie die Formatlücke fest'.format('A')
#Ausgabe"'Stellen Sie die Lücke im A-Format ein'」
-Argument "A": 1 Byte -Breiteneinstellung: 2 Bytes ⇒ 2 Bytes breit (1 Byte Lücke)
Beispiel (Breiteneinstellung "Argument ist größer")
'{:2}Legen Sie die Formatlücke fest'.format('AAAAA')
#Ausgabe"'Stellen Sie Lücken im AAAAA-Format ein'」
-Argument "AAAAA": 5 Bytes -Breiteneinstellung: 2 Bytes ⇒ 5 Bytes breit
Beispiel (Breiteneinstellung "Breite 0")
'{:0}Legen Sie die Formatlücke fest'.format('A')
#Ausgabe(Error)
#「ValueError: '=' alignment not allowed in string format specifier」
Symbol | Platzierung |
---|---|
< | Links gerechtfertigt |
^ | Zentriert |
> | Richtig gerechtfertigt |
** Wie benutzt man **
{<n}
.format()
└ "<": Linksbündig. ein Liniensymbol
└ "n": Breite (Ganzzahl von 0 oder mehr)
Beispiel (linksbündig)
'{:<10}Legen Sie die Formatlücke fest'.format('AAA')
#Ausgabe
#「'Stellen Sie Lücken im AAA-Format ein'」
Beispiel (zentriert)
'{:^10}Legen Sie die Formatlücke fest'.format('AAA')
#Ausgabe
#「'Stellen Sie Lücken im AAA-Format ein'」
Beispiel (rechtsbündig)
'{:>10}Legen Sie die Formatlücke fest'.format('AAA')
#Ausgabe
#「'Stellen Sie Lücken im AAA-Format ein'」
Beispiel (Platzierung individuell einstellen)
'Der erste"{:<7}". Der Zweite "{:^7}". Dritte "{:>7}」'.format('AAA','BBB',333)
#Ausgabe
# 'Die erste "AAA". Die zweite "BBB". Dritte "333"'
{0<n}.format()
└ "0": Mit 0 füllen
└ "<": Linksbündig. Platzierungsspezifikation
Mit Null füllen(Links gerechtfertigt)
'「{:0<10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe
# '"AAA0000000" Füllen Sie die Lücke mit Null'
Mit Null füllen(Zentriert)
'「{:0^10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe
# '"000AAA0000" Füllen Sie die Lücke mit Null'
Wenn die Lücke ungerade ist, wird mehr dahinter sein.
Mit Null füllen(Richtig gerechtfertigt)
'「{:0>10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe
# '"0000000 AAA" Füllen Sie die Lücke mit Null'
@Füllen mit(Links gerechtfertigt)
'「{:@<10}Die Lücke füllen'.format('AAA')
#Ausgabe
# '「AAA@@@@@@@Die Lücke füllen'
Füllen Sie mit ★(Zentriert)
'「{:★^10}Die Lücke füllen'.format('AAA')
#Ausgabe
# '"★★★ AAA ★★★★" Füllen Sie die Lücke'
Füllen Sie mit der Nummer 5(Richtig gerechtfertigt)
'「{:5<10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe
# '"AAA555 5555" Füllen Sie die Lücke mit Null'
Zeichenfolge mit 2 oder mehr Ziffern (Fehler)
'「{:★★^10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe (Fehler)
# ValueError: Invalid format specifier
Zwei oder mehr Ziffern (Fehler)
'「{:11<10}Füllen Sie die Lücke mit Null'.format('AAA')
#Ausgabe (Fehler)
# ValueError: Invalid format specifier
Beispiel (Komma in Tausend)
'{:,}'.format(123456789)
#Ausgabe
# '123,456,789'
%Anzeige(Standard)
'{:%}'.format(1)
#Ausgabe
# '100.000000%'
%Anzeige(小数点以下非Anzeige)
'{:.0%}'.format(1)
#Ausgabe
# '100%'
%Anzeige(2 Stellen nach dem Komma)
'{:.2%}'.format(1)
#Ausgabe
# '100.00%'
%Anzeige(15 Stellen nach dem Komma)
'{:.15%}'.format(1)
#Ausgabe
# '100.000000000000000%'
Der Standardwert von 6 oder mehr Ziffern kann festgelegt werden.
Der Standardwert ist nur ein negatives Vorzeichen. └ Wie '{: -}' (keine Einstellung erforderlich)
Fügen Sie ein + Zeichen hinzu
'Der Erste"{:+}". Der Zweite "{:+}". Dritte "{:+}」'.format(-500, 300, 2.56)
#Ausgabe
# 'Der Erste"-500 ". Der Zweite "+300 ". Dritte "+2.56」'
Fraktion(Standard)
'{}'.format(1.23)
#Ausgabe
# '1.23'
Fraktion(2 Ziffern)
'{:.2f}'.format(1.23456789)
#Ausgabe
# '1.23'
Fraktion(0 Ziffern)
'{:.0f}'.format(1.234345678)
#Ausgabe
# '1'
Fraktion(12 Ziffern)
'{:.12f}'.format(1.234345678)
#Ausgabe
# '1.234345678000'
Festpunkt (Standard)
'{:e}'.format(123456789)
#Ausgabe
# '1.234568e+08'
Festpunkt (2 Ziffern)
'{:.2e}'.format(123456789)
#Ausgabe
# '1.23e+08'
Festpunkt (ohne Dezimalpunkt)
'{:.0e}'.format(123456789)
#Ausgabe
# '1e+08'
Fixpunkt (Argument ist Punkt)
'{:.0e}'.format(123.456789)
#Ausgabe
# '1e+02'
Geben Sie im Argument eine Variable an
'{a}damit{b}Der höchste Berg{c}。'.format(a='Japan',b=2,c='Kitadake')
#Ausgabe
# 'Der zweithöchste Berg Japans ist Kitadake.'
Variablen und Zeichenfolgen sind fehlerhaft
'{a}damit{b}Der höchste Berg{2}。'.format(a='Japan',b=2,Kitadake)
#Ausgabe(Error)
# SyntaxError: positional argument follows keyword argument
Variablen und Zahlen sind Fehler
'{a}damit{1}Der höchste Berg{c}。'.format(a='Japan',2,c='Kitadake')
#Ausgabe(Error)
# SyntaxError: positional argument follows keyword argument
Kann nicht durch Indexnummer angegeben werden
'{0}damit{1}Der höchste Berg{2}。'.format(a='Japan',b=2,c='Kitadake')
#Ausgabe(Error)
# IndexError: Replacement index 0 out of range for positional args tuple
NG ohne Indexnummernangabe
'{}damit{}Der höchste Berg{}。'.format(a='Japan',b=2,c='Kitadake')
#Ausgabe(Error)
# IndexError: Replacement index 0 out of range for positional args tuple
datetime.Datumstyp
import datetime as dt
past = dt.date(2017,1,3)
"{0:%Y Jahr%#m Monat%#d Tag}".format(past)
#Ausgabe
# "{0:%Y Jahr%#m Monat%#d Tag}".format(past)
datetime.Datum / Uhrzeit-Typ
import datetime as dt
today = dt.datetime.now()
"{0:%Y Jahr%m Monat%d Tag---%Ich Zeit%M Minuten%S Sekunden}".format(today)
#Ausgabe
# '20. März 2020---02.08.39'
Einzeln extrahieren(Monat und Sekunde)
import datetime as dt
today = dt.datetime.now()
"{0:%#m Monat,%S Sekunden}".format(today)
#Ausgabe
# 'März, 52 Sekunden'
Referenz: [So ändern Sie das Datumsformat](https://qiita.com/yuta-38/items/337059e1eafab3582851#2-2format%E3%83%A1%E3%82%BD%E3%83%83 % E3% 83% 89% E3% 81% A7% E5% A4% 89% E6% 9B% B4% E3% 81% 99% E3% 82% 8B)
Recommended Posts