0

なぜこれを行うのですか:

def p3(x):
        primes = [2]
        for a in range(3, x, 2):
            sqrt = a ** 0.5
            for b in range(3, sqrt, 2):
                if a % b == 0:
                    break
            if a % b != 0:
                primes.append(a)
        return primes
    print(p3(19))

これを返します:

TypeError: 'float' object cannot be interpreted as an integer, line 5

それはどういう意味ですか、どうすれば修正できますか?
前もって感謝します、
LewisC

4

2 に答える 2