Python 字符串操作同一个变量多次出现

Python string manipulation multiple occurances with same variable

(请注意python版本为2.7) 您好,我有以下 DATBASE 变量

_USER = 'sample'

DATABASES = {
    'stage': ('dbname=' + _USER + '-somedb host=' +_USER+ '-example.com'
           ' user=super password=pass'),
    'prod': ('dbname=' +_USER+ '-somedb host=' +_USER+ '-example.com'
           ' user=super password=pass'),
}

翻译成:

DATABASES = {
    'stage': ('dbname=sample-somedb host=sample-example.com'
           ' user=super password=pass'),
    'prod': ('dbname=sample-somedb host=sample-example.com'
           ' user=super password=pass'),
}

有没有更好的方法用示例替换_USER?我试过使用 %s 但这显然不起作用。

您可以按如下方式使用 str.format

_USER = 'sample'

DATABASES = {
    'stage': ('dbname={user}-somedb host={user}-example.com'.format(user=_USER) +
           ' user=super password=pass'),
    'prod': ('dbname={user}-somedb host={user}-example.com'.format(user=_USER) +
           ' user=super password=pass'),
}

参考:https://docs.python.org/3/library/string.html#string-formatting

请注意,我们现在需要在行尾使用 + 来连接字符串。

使用 str.format,您可以在字符串中包含不同的变量,还可以指定选项。