牌語備忘録 -pygo

あくまでもメモです。なるべくオフィシャルの情報を参照してください。

牌語備忘録 -pygo

Pythonの文字列フォーマットstr.foramat()をやってみる

修正: 2013-09-18

(MacOSX10.7, Python2.7)

『%』を使うやり方は、そのうち無くなるそうなので『str.format(*args, **kwargs)』を使ってみる。

code

hoge.py
import datetime

today = datetime.datetime.now()

# old type
print "%(when)s is %(month)02d" % {'when': 'this month', 'month': today.month}
#-> this month is 03

# new type 1
print "{when} is {month:02d}".format(when='this month', month=today.month)
#-> this month is 03

# new type 2
print "{0} is {1:02d}".format('this month', today.month)
#-> this month is 03

# new type 3
foo = "foo"
print "{}bar".format(foo)
#-> foobar

『{』をエスケープするには*1

『{』を『{{』のように二重に書く。

print "{{}} is {0}".format("waht?")

結果

{} is waht?

*1:追記:20120404