如何在Python中动态生成字符串(观察者模式)

假设我们有以下代码:

var1="top"
var2=var1+"bottom"

如果条件为真,我们想要更改var1值:

if COND==True:
  var1="changed"

现在我想让var2动态改变.使用上面的代码,var2仍将具有值“topbottom”.

我怎样才能做到这一点?

谢谢

最佳答案 您可以使用字符串格式在var2中指定占位符,您希望在其中放置var1的更新值:

In [1653]: var2 = '{}bottom'

这里的{}括号指定占位符.然后调用var2.format以在需要时将var1插入var2.

In [1654]: var1 = 'top'

In [1655]: var2.format(var1)
Out[1655]: 'topbottom'

In [1656]: var1 = 'changed'

In [1657]: var2.format(var1)
Out[1657]: 'changedbottom'
点赞