支离疏哈哈哈 发表于 2020-5-1 14:09:01

return怎么用

def nmsl(a):
        return a
a=input('输入:')
nmsl(a)

为什么输入数字或者字符串,没有返回任何东西呢,None也没有?
return的作用不就是执行完他这行代码然后结束这个函数吗

liuzhengyuan 发表于 2020-5-1 14:10:19

本帖最后由 liuzhengyuan 于 2020-5-1 14:12 编辑

所以
把第4行改成
print(nmsl(a))
这样才对,不然 return 没有可返回的对象

首先函数得把 a 的值返回给 print() 函数,再由 print 输出

永恒的蓝色梦想 发表于 2020-5-1 14:10:33

你没有print{:10_327:}
nmsl,果真暴躁老哥{:10_256:}

Hoiste 发表于 2020-5-1 14:24:56

调用函数返回了对象a,但你没有要求它打印出这个对象啊,所以虽然返回了,但你什么都看不到。

支离疏哈哈哈 发表于 2020-5-1 16:50:29

永恒的蓝色梦想 发表于 2020-5-1 14:10
你没有print
nmsl,果真暴躁老哥

啊,难受啊

支离疏哈哈哈 发表于 2020-5-2 12:22:50

liuzhengyuan 发表于 2020-5-1 14:10
所以
把第4行改成



对了,还有个问题,为什么return 2*x+1之类的表达式能直接出结果呢

liuzhengyuan 发表于 2020-5-2 12:30:17

支离疏哈哈哈 发表于 2020-5-2 12:22
对了,还有个问题,为什么return 2*x+1之类的表达式能直接出结果呢

返回的是 2*x+1 的值

支离疏哈哈哈 发表于 2020-5-2 12:32:16

liuzhengyuan 发表于 2020-5-2 12:30
返回的是 2*x+1 的值

对啊,为啥这就能直接返回值,而不用print呢

liuzhengyuan 发表于 2020-5-2 12:33:14

支离疏哈哈哈 发表于 2020-5-2 12:32
对啊,为啥这就能直接返回值,而不用print呢

你用的是互交模式把~
只有互交模式才可以哦~

编辑器模式就必须得 print()

支离疏哈哈哈 发表于 2020-5-2 13:18:05

liuzhengyuan 发表于 2020-5-2 12:33
你用的是互交模式把~
只有互交模式才可以哦~



确实,谢谢谢

支离疏哈哈哈 发表于 2020-5-2 13:54:43

liuzhengyuan 发表于 2020-5-2 12:30
返回的是 2*x+1 的值

我又来了,def odd(x):
    if x%2 :
         return x
    else:
         return None

这里没有print,为啥能直接返回 x 的值呢

liuzhengyuan 发表于 2020-5-2 13:56:48

支离疏哈哈哈 发表于 2020-5-2 13:54
我又来了,
这里没有print,为啥能直接返回 x 的值呢

???什么意思{:10_250:}???
我没有返回呀
是不是又是互交模式{:10_334:}

支离疏哈哈哈 发表于 2020-5-2 14:08:56

liuzhengyuan 发表于 2020-5-2 13:56
???什么意思???
我没有返回呀
是不是又是互交模式

不是交互模式啊,你确定没返回?我敲个5,他就回个5
页: [1]
查看完整版本: return怎么用