当前位置: 首页 > 知识库问答 >
问题:

codecademy上的代码返回“none”,我不知道为什么

曹泉
2023-03-14

如果参数的类型是int或float,函数应该返回>函数输入的绝对值。

否则,函数应返回“nope”

我已经完成了第一个任务,但我认为我已经完成了任务

def distance_from_zero(argument):
if type(argument) == int or type(argument) == float:
    return abs(argument)
    print(argument)
else:
    print("Nope")

共有1个答案

林俊晖
2023-03-14

在Python中,如果return不是显式的,它就变成none。试试看:

def distance_from_zero(argument):
    if type(argument) == int or type(argument) == float:
        print(abs(argument))
    else:
        print("Nope")

> f = distance_from_zero(-4234)
4234
> f
None

您可以看到f的值是none,这是因为print输出到控制台,而不是主动返回内容。相反,请尝试使用return语句:

def distance_from_zero(argument):
    if type(argument) == int or type(argument) == float:
        return abs(argument)
    else:
        return "Nope"

> distance_from_zero(123)
123 
# here, because you're not assigning the value returned to a variable, it's just output.
> f = distance_from_zero(-4234)
> f
4234
> f = distance_from_zero('cat')
> f
'Nope'

同样重要的是要知道:

return abs(argument)
print(argument) 
 类似资料:
  • 问题内容: 我正在学习理解力。我得到了print(x)部分(我认为。它打印通过了’in’测试的x的值),但是为什么以后还返回None列表呢? 问题答案: 您使用列表理解来打印列表中的项目,然后打印列表本身。尝试将列表分配给变量。 现在,该列表以x表示,没有打印出来。清单还在那里…

  • 我拿不到输出。。有人能帮我得到输出吗 下面给出了程序运行的示例(注意:下面的粗体文本是用户输入的输入): 输入三角形的三条边

  • 抱歉,如果不允许这样做。这是我第一次问问题。无论如何,我应该实现一个程序,根据文本读取等级。 “实施一个程序,根据以下内容计算理解某些文本所需的大致年级水平。文本:恭喜!今天是你的一天。你要去很棒的地方!你走了,走了!3 年级 在完成代码之后。每次我编译它时,它都会给我一个异常,即我除以零。几乎就像在我要求用户输入文本后,它根本不被读取,字母计数保持在零。我不知道如何绕过它。下面是我导入java.

  • 问题内容: 为什么要用Python返回? 我如何获得改组后的值而不是? 问题答案: 更改列表 到位 。 在原位更改结构的Python API方法通常返回,而不是修改后的数据结构。 如果要基于现有列表创建 新的 随机混排列表,并按顺序保留现有列表,则可以使用输入的完整长度: 您还可以将with用于排序键: 但这会调用排序(O(NlogN)操作),而采样到输入长度仅需要O(N)操作(与所使用的过程相同

  • 问题内容: 我有一个自称的函数: 现在,如果我只输入,则一切正常: 但是,如果我输入其他内容,然后输入 ,则会得到以下信息: 我不知道为什么要回来,因为它应该只回来。这None是哪里来的,我该如何修复我的功能? 问题答案: 之所以返回,是None因为当你递归调用它时: ..你不返回该值。 因此,当确实发生递归时,返回值将被丢弃,然后你就无法使用该函数了。退出函数的末尾意味着隐式返回None,就像这

  • 问题内容: 为什么要用返回? 我如何获得改组后的值而不是? 问题答案: 更改x列表到位。 就地更改结构的方法通常返回None,而不是修改后的数据结构。 如果要基于现有列表创建新的随机混排列表,并按顺序保留现有列表,则可以使用输入的完整长度: 你还可以将用于排序键: 但这会调用排序(操作),而采样到输入长度仅需要O(N)操作(与所使用的过程相同,即从收缩池中换出随机值)。 演示: