Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import ipaddress
- def ip_struct(network, dimensions, level=0):
- if not dimensions:
- return
- level += 1
- for subnet in network.subnets(dimensions[0]):
- yield level, subnet
- yield from ip_struct(subnet, dimensions[1:], level)
- def printer(gen):
- for level, net in gen:
- print(" " * level * 2 + f"{net!s}")
- net = ipaddress.IPv6Network('xxxx:xxxx:xxxx:xxxx::/64')
- printer(ip_struct(net, [2,2]))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement