如何基于循环在python中将值动态输入到多行字符串中

时间:2018-11-09 09:42:04

标签: python python-3.x loops dictionary multilinestring

我正在尝试根据输入json中存在的应用程序值将值传递到多行字符串中。使用从json解析的值为每个应用程序打印块。

ENDPOINT=http://localhost:3000/graphql
 SERVER=development

按照以下方式为每个应用添加屏蔽

  block = """
  {app} <<
  {default1};
  {default2};

  server_name {servername1};
  server_name {servername2};

  location {location}
  ^
  proxy_pass http://{application};

  allow {filter1};
  allow {filter2};
  $
  >>"""

我已经保存了需要在sub中传递的值。

现在,如果位置变量在块内-每个应用程序都会更改此值。对于一个应用程序,只有一个位置,但是对于其他应用程序,则有两个值。我只得到location的最后一个值,因为它在循环中被覆盖了。我如何动态编辑app_block中的位置块

下面是输出的样子。

  all += '\n' + block.format(**sub).replace('<<', '{').replace('^','{').replace('$','}').replace('>>', '}')

0 个答案:

没有答案