2016-05-01 155 views
-1

如果我只使用print(),它会打印0-1000范围内的数字的拼写,但我想用return()将结果保存为变量,以便稍后将其分配给其他函数。当我测试它时,它不会用return()打印任何东西,问题在哪里?谢谢!Python:为什么我的程序不打印任何东西?

update:原来我在print()之前调用了return(),所以print()永远不会被调用;但后来我改变了他们的立场,它仍然行不通,为什么?谢谢。

def spell(Numbers): 
    result = [] 

    def spellOne(Numbers): 





    print (result) 
    return(result) 

    spellOne(number) 
+1

...因为您在打印之前会返回。 –

回答

1

我相信你需要在打印之前打电话给spellOne(number),或者甚至返回结果以便第二个函数有效。因为当你打电话给spell时,它所要做的就是打印result这是一个空列表。然后它会返回它,甚至没有到达下一行。以前的方式,第二个函数将永远不会被调用,除非你把它放在前面。

spellOne(number) 
print (result) 
return(result) 
0

根据您的缩进,它会出现,这是因为你调用调用打印之前返回 - 换句话说打印不会被调用。

+0

感谢您的回答。根据你的建议,我改变了return()和print()的位置,但是它给出了一对方括号没有任何内容。我不知道为什么会发生这种情况。 –

相关问题