文字列の書式設定を使用して単語を大文字にすることはできますか? 例えば、
"{user} did such and such.".format(user="foobar")
「Foobar did such and such」を返す必要があります。
私はよく知っていることに注意してください.capitalize()
; ただし、これは私が使用している(非常に単純化されたバージョンの)コードです。
printme = random.choice(["On {date}, {user} did la-dee-dah. ",
"{user} did la-dee-dah on {date}. "
])
output = printme.format(user=x,date=y)
ご覧のとおり、 のように定義するだけuser
でx.capitalize()
は.format()
機能しません。最初のシナリオにも (誤って) 適用されてしまうからです。そして、運命を予測することはできないので、どちらrandom.choice
が選ばれるかを事前に知る方法はありません. 私に何ができる?
追加の注記:実際には ~40 以上の文字列から選択するため、単に実行するoutput = random.choice(['xyz'.format(),'lmn'.format()])
(つまり、各文字列を個別にフォーマットして.capitalize()
から、必要な文字列に使用する) ことは実行可能なオプションではありません。printme