如何在Python中评估嵌套的f字符串? [重复]

问题描述 投票:0回答:1

我有一个带有占位符的 f 字符串,但未对其进行求值。 下面的示例代码显示了我想要实现的最接近的目标。

SourceSchema = 'myschema'
SourceTable = 'mytable'
SourceQuery = 'SELECT * FROM {SourceSchema}.{SourceTable}'
print(f"{SourceQuery}")

结果:它被评估为文字

SELECT * FROM {SourceSchema}.{SourceTable}

我需要的是

SELECT * FROM myschema.mytable

有没有简单的方法可以实现?

python-3.x
1个回答
0
投票

f 字符串始终在它们在代码中所在的位置进行评估 - 该评估不能推迟。

所以,这应该像你想要的那样工作:

SourceSchema = 'myschema'
SourceTable = 'mytable'
SourceQuery = f'SELECT * FROM {SourceSchema}.{SourceTable}'
print(f"{SourceQuery}")

© www.soinside.com 2019 - 2024. All rights reserved.