Python 代码在jupyter笔记本中打印不正确的输出,但它在联机IDE上正确运行

Python 代码在jupyter笔记本中打印不正确的输出,但它在联机IDE上正确运行,python,ipython,jupyter-notebook,Python,Ipython,Jupyter Notebook,您应该使用整数除法,而不是“/”。将y=y/10和n=n/10替换为y=y//10和n=n//10 如果您碰巧运行的是Python2,那么对整数除法使用/可能会起作用。在Python3中,/是正则(数学)除法,11/10=1.1(不是1)。请注意,整数除法运算符/在Python2和Python3中都可以使用,如果您想要整数除法,请始终使用它。我知道python中的缩进,我在这里使用它。您是否可以通过包括代码生成的错误以及迄今为止为调试它所采取的任何步骤来改进问题?一个更具描述性的问题会增加得到有

您应该使用整数除法,而不是“/”。将
y=y/10
n=n/10
替换为
y=y//10
n=n//10


如果您碰巧运行的是Python2,那么对整数除法使用
/
可能会起作用。在Python3中,
/
是正则(数学)除法,11/10=1.1(不是1)。请注意,整数除法运算符
/
在Python2和Python3中都可以使用,如果您想要整数除法,请始终使用它。

我知道python中的缩进,我在这里使用它。您是否可以通过包括代码生成的错误以及迄今为止为调试它所采取的任何步骤来改进问题?一个更具描述性的问题会增加得到有用回答的机会。对我来说很有用。包括您使用的输入和您得到的错误。我的输入是371,而我得到的输出是写在jupyter笔记本上我代码的else块中的语句
# Program for Armstrong Number
# this program prints wrong results in jupyter but running correct in online ide

import math
print("this program is for armstrong number\n")
m=0
p=0
n=int(input("Enter any number: \n"))
y=n
while y!=0:
    y=y/10
    p+=1
y=n
while n!=0:
    x=n%10
    m+=math.pow(x,p)
    n=n/10
if y==m:
    print("The given number is an armstrong number\n")
else:
    print("The given number is not an armstrong number\n")