トップ «前の日記(2010-09-16(Thu)) 最新 次の日記(2010-09-19(Sun))» 編集

屑俺日記

僕の備忘録(PC、UN*X、ネットワーク関連が中心)なんです。
自分の書いたところは適当(な時とか)に書き換えますので御了承を。


2010-09-18(Sat) よく晴れて涼しい風

str.format

位置による指定と番号による指定とキーワードによる指定ができる。
どれかしか使わないなら簡単だ。

fall = '秋'
frute1='かき'
frute2='りんご'
 
>>> print('{}の果物は、{}と{}だ'.format(fall, frute1, frute2)
秋の果物は、かきとりんごだ
 
>>> print('{0}の果物は、{2}と{1}だ'.format(fall, frute1, frute2)
秋の果物は、りんごとかきだ
 
>>> print('{season}の果物は、{apple}と{persimmon}だ'.
...     format(persimmon=frute1, season=fall, apple=frute2))
秋の果物は、りんごとかきだ

ただし、混用はエラーになりやすい気がする。

>>> print('{}の果物は、{}と{1}だ'.format(fall,frute1, frute2))
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: cannot switch from automatic field numbering\
 to manual field specification
>>> print('{season}の果物は、{apple}と{1}だ'.
  format(season=fall, frute1, apple=frute2))
  File "<stdin>", line 1
SyntaxError: non-keyword arg after keyword arg

ならない場合もあるけど。

>>> print('{}の果物は、{}と{persimmon}だ'.format(fall, frute2,persimmon=frute1))
秋の果物は、りんごとかきだ
 
>>> print('{1}の果物は、{0}と{persimmon}だ'.format(frute2,fall,persimmon=frute1))
秋の果物は、りんごとかきだ

リンクはご自由にどうぞ。でもURLや内容が変った場合はあしからず。

index.htmlは ここから。