0
データフレームにIPv4とIPv6のCIDR IPアドレス範囲(必要に応じて分割可能)を持つデータフレームがあります。私はこれらの範囲を取って範囲内の各アドレスを持つデータフレームを作成したいので、別のデータフレームと結合してフィルタリングを行うことができます。 IPアドレスのパッケージを使用してipaddressを使用したCIDR IPアドレス範囲の変換とデータフレームへの出力
、リストを展開する機能は次のとおりです。
a = ip.ip_network('103.21.244.0/22')
for x in a.hosts():
print(x)
これはちょうどこのIP範囲のリストを生成します。誰もがCIDRシリーズのシリーズを入れる方法を知っているので、上記のn回を実行する必要はありませんか?上記のIPアドレスの代わりにデータフレームへの参照を置くと、IPv4またはIPv6ネットワークではないことを示すValueErrorが返されます。
2番目の質問は、Pythonの初心者で、これらの拡張範囲をリストまたはデータフレームにするにはどうすればよいですか?私はこの試みた:
a = ip.ip_network('103.21.244.0/22')
ip_list = [] #x for x in a.hosts()
for x in a.hosts():
ip_list.append(x)
ip_list
をとなってしまった。私はその出力を取り出すと、IPアドレスをregexingより良い方法があると確信している
[IPv4Address('103.21.244.1'),
IPv4Address('103.21.244.2'),
IPv4Address('103.21.244.3'),
IPv4Address('103.21.244.4'),
IPv4Address('103.21.244.5'),
...]
。