【问题标题】:How to print a variable which is created using for loops如何打印使用 for 循环创建的变量
【发布时间】:2021-08-25 23:45:01
【问题描述】:

我正在尝试使用 python3 自动执行一些手动任务,但我不确定如何打印变量。我知道我可以使用 print(f"https://{ip1}",但我正在尝试使用“for loops”解决这个问题

这是部分代码。

......
def hostFile():
    hostConf = (projdateprojname[9:])
    print("\n\tEnter legacy host IP")
    ip1  = input(prompt)
    print("\n\tEnter legacy guest IP")
    ip2  = input(prompt)
    print("\n\tEnter legacy host IP")
    ip3  = input(prompt)
    print("\n\tEnter legacy guest IP")
    ip4  = input(prompt)
    print(f"\n[{hostConf}-1]")
    print(f"{ip1}")
    print(f"{ip2}")
    print(f"{ip3}")
    print(f"{ip4}")
    for i in range(1, 5):
        listofurl =  ("ip" + str(i))
        print(f"https://{listofurl}")
    Script output for the last part:
    https://ip1
    https://ip2
    https://ip3
    https://ip4


    I am expecting to see, for example 
    https://10.1.1.199
    https://10.1.1.200
    https://10.1.1.201
    https://10.1.1.202

【问题讨论】:

标签: python for-loop printing


【解决方案1】:

我明白你在做什么,只是一个调整变化

listofurl =  ("ip" + str(i))

listofurl =  (locals()["ip" + str(i)])

locals() 返回当前范围内变量的字典{}["ip" + str(i)] 被转换为 ["ip<i>"] wherei 在循环的每个阶段更改值

【讨论】:

  • 嗨,戴夫,我不得不几次了解 locals() 的概念。我不知道这个功能。我真的很感谢你的帮助。谢谢,非常感谢。
猜你喜欢
  • 2015-12-26
  • 2020-04-21
  • 2018-02-18
  • 2012-01-21
  • 2011-03-17
  • 2019-04-29
  • 1970-01-01
  • 2015-11-28
  • 1970-01-01
相关资源
最近更新 更多