Ich habe gerade gelernt, dass du schreiben kannst
'{}{}'.format(string_a, string_b)
Anstatt von
'{0}{1}'.format(string_a, string_b)
In Python können Sie also die Ziffern für die Parameter des Zeichenfolgenformats weglassen, wenn Sie möchten, dass die Dinge nacheinander eingefügt werden.
Wird dies als pythonisch angesehen?
HINWEIS: "Pythonic" ist ein unter Python-Programmierern häufig verwendeter Begriff für idiomatischen Python-Code. Innerhalb der Python-Kultur besteht angesichts der expliziten Designphilosophie der Sprache "Es sollte einen - und vorzugsweise nur einen - offensichtlichen Weg geben, dies zu tun" ein klarer Konsens über Stilfragen, insbesondere für sehr spezifische Fragen wie diese. Dies wird aus "The Zen of Python" zitiert, einer Reihe von Aphorismen, die einen großen Beitrag zur Definition von "Pythonic" leisten und in jeder Python-Distribution enthalten sind (geben Sie an einer beliebigen Python-Interpreter-Befehlszeile ein, um import this
sie anzuzeigen ).
quelle
{}
Funktion in Python 3.1 eingeführt . Die Verbesserung, die diesen Zusatz veranlasste, war Problem 5237 . Guido hat mehrere Kommentare zu diesem Thema, darunter "Bitte machen Sie weiter und beenden Sie dies. Ich bin froh, dass dies geschieht!" Wenn das nicht als "Pythonic" gilt, weiß ich nicht, was es ist."{a}{b}".format(a=string_a, b=string_b)
eher die Nummerierung. Wie auch immer, das ist nur meine Spekulation und das Lesen zwischen den Zeilen des Denkens ...Antworten:
Die
{}
Funktion wurde in Python 3.1 eingeführt (und auch in Python 2.7 zurückportiert). Die Verbesserung, die diesen Zusatz veranlasste, war Problem 5237 . Guido hat mehrere Kommentare zu diesem Thema, darunter:Ein Feature mit dieser Art von Billigung durch die BDFL würde in jeder Hinsicht als "Pythonic" angesehen werden.
quelle