首页 > 解决方案 > Python else块不打印任何东西

问题描述

在此代码中,其他块不打印值Treasure locked

def counted(value):
    if(value == 5):
        return 1
    else:
        return 0

def numb(value1):
    sam = 95
    value = 0
    stp = 97
    h = {}
    for i in range(0,26):
        h.update({chr(stp) : (ord(chr(stp))-sam)})
        sam = sam-1
        stp = stp+1
    for j in range(0,5):
        value = h[value1[j]]+value

    if(value > 80):
        print('First lock-unlocked')
    else:
        print('Treasure locked')

string = input()
firstcheck = counted(len(string))
if(firstcheck == 1):
    numb(string)

标签: pythonif-statementerror-handling

解决方案


一个好主意是在输入 if 语句之前检查条件是什么,可能在valueif 语句之前检查正在打印的内容。in 的逻辑与 in 的def numb()内容几乎没有关系def counted()。只要一个正在10正在被传递给numb()我们,我们就知道该函数将运行并且看起来像它。


推荐阅读