#!/usr/bin/python3
def isprime(n):
if n == 0 or n == 1:
return False
for x in range(2, n):
if n % x == 0:
return False
else:
print(n, "is a prime number")
return True
def getv():
x = input("Between what 2 number do you want to check for primes?\n>>\t")
y = input("Second number.\n>>\t")
return x
return y
getv()
z = int(x) - 1
for n in range(int(z),int(y)):
isprime(n)
運行此操作,輸入2個值後,我得到一個NameError:name'x'未定義。 它沒有使用getv()函數,但是我將它包含在輸入變量中進行測試檢查,以便它們只是int對象或str並且只包含數字。沒有getv()函數,它可以順利運行。爲什麼不是函數返回值?爲什麼這個函數似乎沒有返回任何值
你肯定錯誤從'getv時()'函數來了嗎?看起來它來自'z = int(x) - 1'這一行,因爲當時沒有定義'x'。 –
它正在返回一個值,但您沒有使用它。 –