Es ist ein Herausforderungsrekord von 100 Sprachverarbeitungsklopfen 2015. Die Umgebung ist Ubuntu 16.04 LTS + Python 3.5.2 : : Anaconda 4.1.1 (64-Bit). Klicken Sie hier, um eine Liste der vergangenen Schläge anzuzeigen (http://qiita.com/segavvy/items/fb50ba8097d59475f760).
Implementieren Sie eine Funktion, die die Argumente x, y, z verwendet und die Zeichenfolge "y bei x ist z" zurückgibt. Setzen Sie außerdem x = 12, y = "Temperatur", z = 22,4 und überprüfen Sie das Ausführungsergebnis.
Der fertige Code:
main.py
# coding: utf-8
def format_string(x, y, z):
'''Argument x, y,Empfängt z und gibt die Zeichenfolge "y bei x ist z" zurück.
Streit:
x, y, z --Parameter zum Einbetten
Rückgabewert:
Formatierte Zeichenfolge
'''
return '{hour}von Zeit{target}Ist{value}'.format(hour=x, target=y, value=z)
#Prüfung
x = 12
y = 'Temperatur'
z = 22.4
print(format_string(x, y, z))
Ausführungsergebnis:
Terminal
Die Temperatur um 12 Uhr ist 22.4
Die Angabe von str.format ()
ist [Formatspezifikationszeichenfolgensyntax](http: // docs .python.jp / 3 / library / string.html # formatstrings) enthält eine Erklärung. Wenn Sie es nicht verwenden, ist es schwer zu merken.
Es gibt auch eine string.Template
-Klasse. Dies mag näher an der Absicht der Frage liegen, daher werde ich sie auch hier schreiben.
Der fertige Code:
main2.py
# coding: utf-8
from string import Template
def format_string(x, y, z):
'''Argument x, y,Empfängt z und gibt die Zeichenfolge "y bei x ist z" zurück.
Streit:
x, y, z --Parameter zum Einbetten
Rückgabewert:
Formatierte Zeichenfolge
'''
s = Template('$Stunde$Ziel ist$value')
return s.substitute(hour=x, target=y, value=z)
#Prüfung
x = 12
y = 'Temperatur'
z = 22.4
print(format_string(x, y, z))
Ausführungsergebnis:
Terminal
Die Temperatur um 12 Uhr ist 22.4
Das ist alles für den 8. Schlag. Wenn Sie Fehler haben, würde ich mich freuen, wenn Sie darauf hinweisen könnten.
Recommended Posts