tz编程学习 发表于 2021-6-30 18:18:48

新手关于函数返回值的问题

程序和结果如图所示
我是明白temp=k(1,2)的含义的   temp接收了k(1,2)的返回值但是我不明白为什么会输出一个3   这不就是一个赋值操作吗为什么函数会运行 而且运行之后只输出3而不输出返回值
还有 单独的那个k(1,2) 这个是运行了一次函数 但是为什么返回值不输出呢
print(k(1,2))   输出3和返回值都会被打印   ,上面的返回值就不输出这是为啥

tz编程学习 发表于 2021-6-30 18:20:59

print(temp)会打印一个返回值我是理解的
但是k(1,2) 只输出一个 3
temp =k(1,2) 明明是个赋值操作为啥会打印东西啊
还有就是print(k(1,2))为啥 这次 3和返回值都出来了
上面写的乱 我重新写了一遍

qiuyouzhi 发表于 2021-6-30 18:27:59

肯定要先计算等号右边的值(调用k)再赋值到左边呀

wp231957 发表于 2021-6-30 18:31:21

说到底,print是print   return是return
这是两个不想干的东西,实在是搞不明白为什么这么多人会混淆它俩

tz编程学习 发表于 2021-6-30 19:59:00

wp231957 发表于 2021-6-30 18:31
说到底,print是print   return是return
这是两个不想干的东西,实在是搞不明白为什么这么多人会混淆它俩

我知道print是print我只是好奇为什么 在print的时候会输出返回值
而在   直接调用函数的时候返回值不输出

tz编程学习 发表于 2021-6-30 20:00:23

wp231957 发表于 2021-6-30 18:31
说到底,print是print   return是return
这是两个不想干的东西,实在是搞不明白为什么这么多人会混淆它俩

我写完函数之后
运行b(1,2)
结果是   就是一个3
运行 print(b(1,2))
结果是3 和一个返回值   

wp231957 发表于 2021-6-30 20:02:47

tz编程学习 发表于 2021-6-30 19:59
我知道print是print我只是好奇为什么 在print的时候会输出返回值
而在   直接调用函数的时候返 ...

print(b(1,2))
这里是调用了两个函数,首先调用b函数
自然b函数里面的所有代码都要被执行,执行完后返回一个值,作为print函数的参数

tz编程学习 发表于 2021-6-30 20:18:10

wp231957 发表于 2021-6-30 20:02
print(b(1,2))
这里是调用了两个函数,首先调用b函数
自然b函数里面的所有代码都要被执行,执行完 ...

醍醐灌顶!!!
我明白了
果然老前辈的经验
无论什么时候需要使用这个函数赋值也好打印也罢 都必须先执行这个函数
之后需要输出值的话就是返回值!
彻底明白了
多谢
页: [1]
查看完整版本: 新手关于函数返回值的问题