我正在尝试创建一个脚本,该脚本生成所有以用户输入的前2个段开头的IP。例如:您输入123.123,脚本将列出从123.123.0.0到123.123.255.255的所有IP的列表。
因此,为了生成第三个段,我尝试使用for循环使用户输入缩进一个点,然后从0到255的所有数字范围缩进,然后将所有内容附加到列表中,并且对于第四部分,我尝试了相同的操作,但是因为我试图缩进带有字符串和范围的列表,所以它不起作用。
ip_class=input("Enter IP range: ")
ip_templist=[]
for no in range(0,256):
ip_templist.append(ip_class+"."+str(no))
如果您有更好的方法来执行同样可以使用的模块功能。
答案 0 :(得分:0)
使用双列表理解,您可以一行完成。
ip_class = input("Enter IP range: ")
res = ["%s.%d.%d" % (ip_class, x, y) for x in range(256) for y in range(256)]
print(res)
这不会检查有效的第一个输入,对ip_class
的输入实际上可能是任何东西。