[英]Why do I get an error about 'unsupported operand types for /'?
該程序應檢查輸入的數字是否為質數。
def checkPrime():
primeASK = raw_input('''Please enter a prime number.''')
print 'Your Number is %s.' %(primeASK)
if primeASK.isdigit():
primeASK = int(primeASK)
number = 1
while primeASK > number:
print primeASK / number
number += 1
checkPrime()
這是我一直收到的錯誤(顯然程序不完整)
Traceback (most recent call last):
File "C:/Python27/Lib/idlelib/primeChecker.py", line 14, in <module>
checkPrime()
File "C:/Python27/Lib/idlelib/primeChecker.py", line 5, in checkPrime
if primeASK.isdigit():
AttributeError: 'int' object has no attribute 'isdigit'
您嘗試將字符串除以整數,因此,需要首先將輸入解析為int
。
def checkPrime():
primeASK = raw_input('''Please enter a prime number.''')
print 'Your Number is %s.' %(primeASK)
if primeASK.isdigit():
primeASK = int(primeASK)
number = 1
另外, number + 1
應該是number += 1
primeAsk
是一個String,因為這是raw_input()
返回的結果。 您的錯誤是您將字符串除以整數。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.