失敗談 技術

小ネタ – Python3 でIPv4アドレスの第三オクテットを加算する方法

投稿日:

ホント小ネタです。IPv4アドレスの第四オクテットは単に加算すればいいですが、第三オクテットを加算する方法が見つかりませんでした

通常はしないのかもしれませんが、、そして残念ながら、いい方法がありませんでした。結局intにしてx 256にするという当たり前な方法しか。。

以下の感じです。

# 一行で書くと以下
# ipaddress.ip_address(int(ipaddress.ip_address('192.168.1.1'))+(num * 256))

import ipaddress


class OctetIPAddress():

    def __init__(self, ipaddr):
        self._ipaddr = ipaddress.ip_address(ipaddr)

    def third_octet(self, num):
        return ipaddress.ip_address(int(self._ipaddr) + (num * 256))


if __name__ == '__main__':
    print(OctetIPAddress('192.168.1.1').third_octet(3))

実行すると以下になります。

$ python3 pyip.py
192.168.4.1

もうちょっと考えるといい方法があるのかもしれませんが、とりあえず妥協。。

そして当然ながら、numを257にすると、192.169.2.1になるという、、可変では使わないからな、、たぶん。使うときは気にしよう。

-失敗談, 技術

執筆者:

関連記事

Ruby(Rails)で最小限にREST APIを立ち上げる

簡単にREST APIを立ち上げたいなーと思うときが仕事であります。別にRubyでなくてもいいのですが、一応前提がRubyであることにします。 仕事で必要になるには 現在の仕事を鑑みると、最低限以下の …

seaborn + Pandas + Python によるグラフ描画(その1: 準備編)

グラフ描画してみよう 今現在の仕事で、グラフ描画する可能性があるので、少し練習してみようと思います。 題材について 突然ですが、私は確定拠出型年金に加入しています。証券会社はSBI証券 にしています。 …

Vue.jsをbetter jQueryとして使う!FastAPI+Vue.jsと生成AIで作る住所録アプリ

昔あるところに。。 昔、jquery全盛で、Vue.jsが出てきたすぐに「これはjqueryを駆逐できるかも」と思ってjqueryの実装をVue.jsに変えようとしたことがあります。 結局全部を変えた …

(小ネタ) Reflex (Python) にてタブ形式のlinkを設定する

小ネタですが書いておきます。 Reflex とは、は割愛 前回に書いたので割愛します。 使い始めてみた 感想は後日、ということで 本題、タブ形式のlinkメニュー たいていのUIコンポーネントにはタブ …

WSL2のubuntu 22.04 LTSを24.04 LTSにアップデート

WSL2 24.04LTS アップデート

google オプトアウト Click here to opt-out.