我试图将for循环的每次迭代的结果都放到列表中,但是当我运行我的代码时,我只能在列表中得到最后一次迭代的结果。
import ipaddress
user_input = input("")
network = ipaddress.IPv4Network(user_input)
for i in network.hosts():
ipaddresses = i
print(ipaddresses)
结果是 -
10.192.32.0/24
10.192.32.254
答案 0 :(得分:0)
如果要将for循环的每次迭代的结果都放到列表中,则需要list来存储每次迭代的值。
import ipaddress
user_input = input("")
network = ipaddress.IPv4Network(user_input)
ipaddresses = [] #initiate an empty list
for i in network.hosts():
ipaddresses.append(i)
print(ipaddresses)
答案 1 :(得分:0)
你总是将ipadresses设置为i的当前值,因此ipadress始终是它设置的最后一个字符串。实现目标的更快方法是进行列表理解:
import ipaddress
user_input = input("")
network = ipaddress.IPv4Network(user_input)
ipaddresses = [i for i in network.hosts()]
print(ipaddresses)