【问题标题】:add list indexes to ip address dynamically动态添加列表索引到 ip 地址
【发布时间】:2017-04-05 03:13:45
【问题描述】:

ip_address = '172.16.%d.%d' % (rack_number, box_number)

我有一个 IP 地址。第一个和第二个数字是静态的。第 3 和第 4 将根据用户输入进行更改。

rack_number 是一个整数。那里没有问题。但是,箱号将在1-16 之间。我为此使用list

假设我有 rack 号码 3box_number 2, 9

接下来我需要创建两个 ip 地址来发送命令。

因此,IP 地址将是 172.16.3.2172.16.3.9

我怎样才能以功能性的方式实现这一点?

【问题讨论】:

  • 功能性是什么意思?无论如何,只需将ip_address 制作成一个容器,可能是一个列表,它由rack_number 和列表box_number 构建而成

标签: python python-2.7 list ip subprocess


【解决方案1】:

列表理解就是你所需要的,新的格式让它看起来更好:

ip_addresses = ['172.16.{}.{}'.format(rack, box) for box in box_numbers.split(', ')]

如果box_numbers 是一个列表,则不需要拆分,它只适用于字符串输入:

ip_addresses = ['172.16.{}.{}'.format(rack, box) for box in box_numbers]

【讨论】:

  • 如果 box_numbers 是一个列表。我认为没有必要就此分开。只是一个建议。
  • @SpiderWasp42 基于用户输入建议它是一个字符串
  • 我认为用户输入指的是机架号和 box_numbers。但我觉得,由于 OP 明确表示 box_numbers 可以假设为一个列表,因此从发布答案的角度来看,没有必要进行拆分。否则,一流的答案。干杯!
  • @SpiderWasp42 更新 ;)
猜你喜欢
  • 2013-01-21
  • 2018-04-26
  • 2013-11-05
  • 1970-01-01
  • 2015-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-08-27
相关资源
最近更新 更多