首页 > 解决方案 > Python NameError:未定义名称“isAnagram”

问题描述

我想从用户输入中打印一个数字是否是字谜。我收到一个错误,说 nameError。错误信息

这是我检查字谜输入的代码。

n = input("Enter a long number")
factor = 2
factor_anagram = False
while factor < 10:
    if isAnagram(n, factor):
    print(n, "is an anagram with factor", factor)
    factor_anagram = True 
    factor += 1
if not factor_anagram:
     print("No")

我需要创建一个类吗?我也尝试创建一个 isAnagram 类。但是我的实现并没有解决问题。

标签: pythonpython-3.7

解决方案


您正在尝试使用 isAnagram(n, factor) 作为内置函数,如 print("xyz")。isAnagram() 不是内置函数,因此您必须在代码顶部定义它。它看起来像这样:

def isAnagram(n, factor):
    if (whatever comparison needs to be made here):
        return True
    else:
        return False

现在,当您调用 isAnagram 函数时,将返回 True 或 False。


推荐阅读