時々Pythonスクリプトで私は次のような行を見ます:
cmd = "%s/%s_tb -cm cond+line+fsm -ucli -do \"%s\""
上記の行の%s
はどこで置換されますか? Python文字列のスタックがあり、それらをポップして%s
を置き換えますか?
それは後でのようなもので使用されます:
print cmd % ('foo','boo','bar')
表示されているのは、後で入力されるフィールドを含む文字列の割り当てです。
python string formatの基本
あなたのコード行に対する具体的な答えではありませんが、あなたがpythonに新しいことを言ったので、私はこれをいくつかの喜びを共有するための例として使うと思いました;)
リストを使用した簡単なインライン例:
>>> print '%s %s %s'%('python','is','fun')
python is fun
辞書を使用した簡単な例:
>>> print '%(language)s has %(number)03d quote types.' % \
... {"language": "Python", "number": 2}
Python has 002 quote types
疑問がある場合は、python公式ドキュメント- http://docs.python.org/library/stdtypes.html#string-formatting
文字列の補間に使用されています。 %s
は文字列に置き換えられます。モジュロ演算子(%
)文字列補間を行います。文字列は左側にあり、値はさまざまな%s
は、タプルの右側にあります。
>>> s = '%s and %s'
>>> s % ('cats', 'dogs' )
<<< 'cats and dogs'
キャラクターが1人だけの場合、タプルを忘れることができます。
>>> s = '%s!!!'
>>> s % 'what'
<<< 'what!!!'
pythonの新しいバージョンでは、推奨される方法は、文字列型のformat
メソッドを使用することです。
>>> '{0} {1}'.format('Hey', 'Hey')
<<< 'Hey Hey'