以下のコードでは、obj.subject
をvarに配置しますsubject,
も読むobj.body
をbody
に配置します。まず、kwargs
変数を読み取り、置換する文字列内のキーワードを検索します。存在しない場合は次に進みます。
Pythonでkwargs
を反復処理するにはどうすればよいですか?
for key in kwargs:
subject = str(obj.subject).replace('[%s]' % upper(key), kwargs[key])
for key in kwargs:
body = str(obj.body).replace('[%s]' % upper(key), kwargs[key])
return (subject, body, obj.is_html)
Python 3ユーザーの場合:
.items()
でkwargs
を反復できます
_subject = obj.subject
body = obj.body
for key, value in kwargs.items():
subject = subject.replace('[%s]' % key.toupper(), value)
body = body.replace('[%s]' % key.toupper(), value)
return (subject, body, obj.is_html)
_
For Python 2 users:の場合
.iteritems()
でkwargs
を反復できます:
_subject = obj.subject
body = obj.body
for key, value in kwargs.iteritems():
subject = subject.replace('[%s]' % key.toupper(), value)
body = body.replace('[%s]' % key.toupper(), value)
return (subject, body, obj.is_html)
_
Python 3.にアップグレードする人のための簡単なメモ。
Python 3では、ほとんど同じです。
_subject = obj.subject
body = obj.body
for key, value in kwargs.items():
subject = subject.replace('[{0}]'.format(key.toupper()), value)
body = body.replace('[{0}]'.format(key.toupper()), value)
return (subject, body, obj.is_html)
_
dict
にはメソッドiteritems
がなくなったため、iteritems()
はitems()
になることに注意してください。