For loop if else

bir türlü yapamadım yardım eder misiniz?

class app():
    def __init__(self, ips1, ips2):
        ip1 = ips1.split('.')
        print(ip1)
        ipb1 = ip1[0]
        ipb2 = ip1[1]
        ipb3 = ip1[2]
        ipb4 = ip1[3]
        
        ip2 = ips2.split('.')
        print(ip2)
        ips1 = ip2[0]
        ips2 = ip2[1]
        ips3 = ip2[2]
        ips4 = ip2[3]
        
        for a in range(int(ipb1), 255):
            for b in range(int(ipb2), 255):
                for c in range(int(ipb3), 255):
                    for d in range(int(ipb3), 255):
                        ipranges = f'{a}.{b}.{c}.{d}'
                        print(ipranges)
                        
app("192.168.1.0", "192.168.2.0")

192.168.2.0 da durmuyor

192.168.1.0’da başlayıp, 192.168.2.0’da durması için bir kod yazmamışsın ki dursun?
Kodunda bir koşul yok.

koşula girmiyor yapamadığım için sorduydum

class app():
    def __init__(self, ips1, ips2):
        self.ips1 = ips1
        self.ips2 = ips2

    def number_ip_adresi(self):
        ip1_split = self.ips1.split(".")
        ip2_split = self.ips2.split(".")
        return ip1_split

    def ip_hesapla(self):
        ip_listesi = []
        # while len(ip_listesi) <= 255:
        for i in range(int(a.number_ip_adresi()[3]), 256):
            ip_listesi.append(f"{a.number_ip_adresi()[0]}.{a.number_ip_adresi()[1]}.{a.number_ip_adresi()[2]}.{i}")
        return ip_listesi

a = app("192.168.1.0", "192.168.2.0")
for i in a.ip_hesapla():
    print(i)

ben fazla sınıf yapılarıyla program yazamıyorum da gördüğüm kadarıyla def init kısmında verdiğin ips1 ve ips2 yi self.ips1 ve self ips2 eşitlemen gerekiyor gibi düşünüyorum.

programda verdiğin ip ler birbirini takip eden ip ler, yani 192.168.1.255 ten sonra 192.168.2.0 olur onun için range 0, 256) yeter gibiydi.

düzeltme: while döngüsünü farklı ip aralıklarına (192.168.1.0 192.168.3.0) geçiş için kullanmıştım tek ip için gereksiz olduğu için kaldırdım. o döngüde daha başka hesaplamalar yapacaktım ondan kullanmıştım.

1 Beğeni