0
我有一個準備好的字符串,例如my_string = 'My name is {name}.'
從準備好的字符串獲取關鍵參數
,我有kwargs字典,如:
format_kwargs = {
'name': 'John',
...
}
所以,我可以格式化以這種方式字符串:my_string.format(**format_kwargs)
這是所有好。問題是我想確定字符串中的鍵,所以我不需要計算kwargs。也就是說,默認情況下,我在這些字符串中使用了一組關鍵字,但並非所有字符串都用於所有字符串。它們基本上是向用戶顯示的常規消息,例如'{name},您的帳戶已成功創建!'。
我想要做的事,如:
format_kwargs = {}
if 'name' in <my_string.keys>:
format_kwargs['name'] = self.get_user().name
if '...' in <my_string.keys>:
format_kwargs['...'] = some_method_...()
my_string.format(**format_kwargs)
如何取回鑰匙?
編輯:
簡單if 'name' in my_string
不起作用,因爲這也符合像{parent_name}
或'The name change was not successful.'
它提供比現在更多的關鍵字沒有問題在格式字符串中。 –
什麼是'self.get_user()'? – RomanPerekhrest
這些價值如此*非常昂貴*來計算它是值得的嗎? –