gpt4 book ai didi

python - for循环中的变量插值?

转载 作者:太空宇宙 更新时间:2023-11-03 15:42:49 24 4
gpt4 key购买 nike

我有一个主机列表,我正在尝试迭代这些主机以建立 ssh 连接。在 ruby​​ 中,我可以使用 #{variable} 来访问命令中的变量,我应该为 python 做什么?

我在以下 python 代码中包含了 ruby​​ 语法,作为我想要的功能的占位符。执行此操作的 Python 方法是什么?

h = """
foo-pants-linux-001
foo-pants-linux-002
foo-pants-linux-003
foo-pants-linux-004
foo-pants-linux-005
"""

hosts = h.split()

for host in hosts:
subprocess.check_output("ssh foobar@#{host} `echo hi!`")

最佳答案

您可以使用模 (%) 或 .format(..):

subprocess.check_output("ssh foobar@%s `echo hi!`"%host)
subprocess.check_output("ssh foobar@{host} `echo hi!`".format(host=host))
subprocess.check_output("ssh foobar@{} `echo hi!`".format(host))

%s 是一个格式说明符,表示您采用主机的字符串值。

如果您想引入多个命名变量,您可以使用{host},然后使用显式命名的参数调用format() .

您还可以使用 {},这意味着您将获取提供给 .format(..) 的参数中的下一个元素。

关于python - for循环中的变量插值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41991553/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com