允许用户定义一个变量,并用值替换
我有一个用户输入的字符串,s = "my name is {name} and my age is {age}"我正在尝试使用{name}并{age}替换为其他字符串。
在单个变量的情况下,如果只是name="bob"使用.replace('{name}', 'bob')会很简单{name},但我的目标是拥有大约 10-15 个不同的变量,这会使事情复杂化。
变量可以在字符串中的任何位置,我也是从数据库中获取字符串d = {'name': 'bob', 'age': 18},所以不能使用 f-strings。
回答
您可以将 dict 扩展为str.format().
s = "my name is {name} and my age is {age}"
d = {'name': 'bob', 'age': 18}
print(s.format(**d)) # -> my name is bob and my age is 18
相关:如何创建可变变量?