37,742
社区成员
发帖
与我相关
我的任务
分享
num=input("请输入一个大于2的自然数:")
得到的 num 以为是 数字类型=int 了
其实是 字符串类型=str
所以完整逻辑应该是:
numStr=input("请输入一个大于2的自然数:")
numInt = int(numStr)
然后再去调用后面代码。
以及,通过打印变量类型,更好的理解代码逻辑:
numStr = input("请输入一个大于2的自然数:")
print("type(numStr)=%s" % type(numStr))
numInt = int(numStr)
print("type(numInt)=%s" % type(numInt))
def sushu(num) :
lst = []
for i in range(2 , num) :
flag = 1
for j in range(2 , i) :
if i % j == 0 :
flag = 0
break
if flag :
lst.append(i)
print(lst)
num =int( input("请输入一个大于2的自然数:"))
sushu(num)