Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 循环中的print语句不打印_Python_Printing_Nothing - Fatal编程技术网

Python 循环中的print语句不打印

Python 循环中的print语句不打印,python,printing,nothing,Python,Printing,Nothing,我目前学习python是为了好玩,所以我在上做挑战。这就是问题中的代码,应该返回523。我在末尾有一个print语句,它应该打印满足所有标准的数字,这些标准是基于首先定义的函数的,但是它没有。它过去常常在其中一个函数中抛出与模运算符相关的错误,但是它现在可以工作,现在除了以代码0结束外什么也不做。我已经尝试过缩进和间距,但到目前为止没有任何效果。请原谅我糟糕的代码,并随时指出您发现的任何逻辑错误 def primer(num): for j in range(num+1):

我目前学习python是为了好玩,所以我在上做挑战。这就是问题中的代码,应该返回523。我在末尾有一个print语句,它应该打印满足所有标准的数字,这些标准是基于首先定义的函数的,但是它没有。它过去常常在其中一个函数中抛出与模运算符相关的错误,但是它现在可以工作,现在除了以代码0结束外什么也不做。我已经尝试过缩进和间距,但到目前为止没有任何效果。请原谅我糟糕的代码,并随时指出您发现的任何逻辑错误

def primer(num):
    for j in range(num+1):
        if num > 1:
            for k in range(2, num):
                if num % k == 0:
                    pass
                else:
                    return True

def larger_than_99(nnum):
    if nnum < 100:
        return True
    else:
        return False

def no_1_or_7(numm):
    if 1 or 7 in str(numm):
        return False
    else:
        return True

def checksum_10(nnumm):
    sum = 0
    for i in range(nnumm):
        sum += int(i)
    if sum <= 10:
        return True
    else:
        return False

def first2odd(nuum):
    if (str(nuum)[0] + str(nuum)[1]) % 2 != 0:
        return True
    else:
        return False

def secondndlastdigiteven(nuumm):
    if str(nuumm)[len(str(nuumm)-2)] % 2 == 0:
        return True
    else:
        return False

def lastequaltoquersum(nuum):
    if len(str(nuum)) == str(nuum)[len-1]:
        return True
    else:
        return False


for k in range(1,1001):
    if larger_than_99(k) == True:
#       primer(k)
        if primer(k) == True:
#            no_1_or_7(i)
            if no_1_or_7(k) == True:
 #               checksum_10(i)
                if checksum_10(k) == True:
  #                  first2odd(i)
                    if first2odd(k) == True:
   #                     secondndlastdigiteven(i)
                        if secondndlastdigiteven(k) == True:
    #                        lastequaltoquersum(i)
                            if lastequaltoquersum(k) == True:
                                print k    #this isnt working

def底漆(数量): 对于范围内的j(数值+1): 如果num>1: 对于范围内的k(2,num): 如果num%k==0: 通过 其他: 返回真值 def大于99(毫微米): 如果nnum<100: 返回真值 其他: 返回错误 def编号1或7(numm): 如果str为1或7(单位:毫米): 返回错误 其他: 返回真值 def校验和_10(nnumm): 总和=0 对于范围内的i(nnumm): 总和+=int(i)
如果sum if the
print
未打印,则表示
lastequaltoquersum(k)
或其前面的一个检查为
False
。你做了什么调试,把问题缩小到哪里了?
len(str(num))==str(num)[len-1]
看起来很可疑。字符串永远不会等于数字。