Was ist eine Formatzeichenfolge?
Beim Formatieren einer Zeichenfolge wird eine Zeichenfolge gemäß einer einheitlichen Spezifikation ausgegeben. Wenn die Spezifikation nicht einheitlich ist, kann dies zu Missverständnissen führen
format () Methode
-
akzeptierenStandortparametermitSchlüsselwortparameterZwei Parameter
-
Beide werden an einen weitergegebenErsatzFeld, und das Ersatzfeld wird in der Zeichenfolge durch {} dargestellt
Beachtung: Beim Kombinieren von Positionsparametern und Schlüsselwortparametern müssen die Positionsparameter vor den Schlüsselwortparametern liegen, da sonst ein Fehler gemeldet wird
Wie drucke ich {} aus? ? ?
Ratet mal, was der folgende Code druckt?
>>> '{0:.1f}{1}'.format(27.658,'GB')
-
In der ErsatzdomäneDoppelpunkt: Zeigt den Anfang des Formatierungssymbols an. .1 bedeutet Rundung mit einem reservierten Dezimalpunkt, f bedeutet Drucken einer Festkommazahl (Festkommazahlen und Gleitkommazahlen sind ähnlich, dh Drucken einer Dezimalzahl).
Formatierungsoperator%
-
Wenn% auf eine Zeichenfolge trifft, wird% zu einem Operator, der ausschließlich für die Zeichenfolge gilt
Symbol | Bedeutung |
---|---|
% c | Formatieren von Zeichen und deren ASCII-Codes |
% s | Zeichenfolge formatieren |
% d | Ganzzahl formatieren |
%Das | Formatieren Sie eine vorzeichenlose Oktalzahl |
% x | Formatieren Sie die vorzeichenlose Hexadezimalzahl |
% X. | Formatieren Sie eine vorzeichenlose Hexadezimalzahl (Großbuchstaben). |
% f | Wenn Sie Gleitkommazahlen formatieren, können Sie die Genauigkeit nach dem Dezimalpunkt angeben |
% e | Formatieren Sie Gleitkommazahlen in wissenschaftlicher Notation |
% E. | Gleiche Funktion wie% e, Format der Gleitkommazahl in wissenschaftlicher Notation |
%G | Entscheiden Sie sich,% f oder% e entsprechend dem Wert zu verwenden |
%G | Gleicher Effekt wie% g, verwenden Sie je nach Wert% f oder% E. |
-
% x: Formatiert eine vorzeichenlose Hexadezimalzahl
-
% X: Formatiert eine vorzeichenlose Hexadezimalzahl (Großbuchstaben)
-
% e: Formatieren Sie Gleitkommazahlen in wissenschaftlicher Notation
-
% E: Gleiche Funktion wie% e, Formatieren von Gleitkommazahlen in wissenschaftlicher Notation
-
% g: Entscheiden Sie sich,% f oder% e entsprechend dem Wert zu verwenden
-
% G: Gleiche Funktion wie% g, verwenden Sie je nach Wert% f oder% E.
Formatieren von Hilfsbefehlen
Symbol | Bedeutung |
---|---|
mn | m zeigt die minimale Gesamtbreite, n ist die Anzahl der Stellen nach dem Dezimalpunkt |
- - | Ergebnis linksbündig |
+ | Pluszeichen vor positiven Zahlen anzeigen |
# | Zeigen Sie '0o' vor der Oktalzahl, zeigen Sie '0x' oder '0X' vor der Hexadezimalzahl |
0 | Füllen Sie die angezeigte Zahl mit '0' anstelle von Leerzeichen |
Python-Fluchtzeichen und ihre Bedeutung
Symbol | Beschreibung |
---|---|
\ ' | Apostroph |
"" | Anführungszeichen |
\ein | Rufen Sie das System an |
\ b | Rücktaste |
\ n | Neue Zeile |
\ t | Horizontale Registerkarte (TAB) |
\ v | Vertikale Registerkarte |
\ r | Wagenrücklauf |
\ f | Formularvorschub |
\Das | Zeichen, die durch Oktalzahlen dargestellt werden |
\ x | Zeichen, die durch Hexadezimalzahlen dargestellt werden |
\ 0 | Stellt ein Nullzeichen dar |
\\ | Backslash |
Aufgabe
0. Was wird in der folgenden Codezeile gedruckt?
>>> "{
{1}}".format("不打印", "打印")
{1}, weil {1} erklärt wurde
1. Was sind im folgenden Code die Parameter a, b und c?
>>> "{a} love {b}.{c}".format(a="I", b="FishC", c="com")
'I love FishC.com'
Schlüsselwortparameter
2. Was sind im folgenden Code die Parameter {0}, {1}, {2}?
>>> "{0} love {1}.{2}".format("I", "FishC", "com")
'I love FishC.com'
Positionsparameter
3. Wenn Sie Pi = 3.14 anzeigen möchten, wie sollten Sie die Zeichenfolge vor dem Formatieren ausfüllen?
''.format('Pi = ', 3.1415)
'{0}{1:.2f}'.format('Pi = ', 3.1415)
4. Schreiben Sie ein hexadezimales Konvertierungsprogramm. Die Programmdemonstration lautet wie folgt (Hinweis, Dezimalkonvertierungs-Binärdatei kann dieses BIF mit bin () verwenden):
Direkt drucken, die Zahl im Inneren wird als Zeichenfolge behandelt
print("十进制 -> 十六进制 :num -> '%X' % num")
Drucken Sie Zeichenfolgen und Zahlen getrennt und verbinden Sie sich mit end = "". Es gibt viele Drucke wie diesen. Eine andere Sache, die verbessert werden kann, ist das Hinzufügen von "0x" und "0o" vor hexadezimal und oktal.
while 1:
num = input("请输入一个整数(输入Q结束程序):")
if num != 'Q':
num = int(num)
print("十进制 -> 十六进制 :",end = "")
print( num, end = '')
print('->',end = '')
print('%X' % num)
print("十进制 -> 八进制 :",end = "")
print( num, end = '')
print('->',end = '')
print('%o' % num)
print("十进制 -> 二进制 :",end = "")
print( num, end = '')
print('->',end = '')
print(bin(num))
Schauen Sie sich den Code der kleinen Schildkröte an
q = True
while q:
num = input('请输入一个整数(输入Q结束程序):')
if num != 'Q':
num = int(num)
print('十进制 -> 十六进制 : %d -> 0x%x' % (num, num))
print('十进制 -> 八进制 : %d -> 0o%o' % (num, num))
print('十进制 -> 二进制 : %d -> ' % num, bin(num))
else:
q = False
Verwenden Sie # anstelle von 0o, 0x
q = True
while q:
num = input('请输入一个整数(输入Q结束程序):')
if num != 'Q':
num = int(num)
print('十进制 -> 十六进制 : %d -> %#x' % (num, num))
print('十进制 -> 八进制 : %d -> %#o' % (num, num))
print('十进制 -> 二进制 : %d -> ' % num, bin(num))
else:
q = False