吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 920|回复: 18
收起左侧

[求助] Python中有一个没搞懂,希望请教一下懂的人

[复制链接]
Monamie 发表于 2021-11-22 21:15
Python函数高级用法之一就是将函数当做值赋给变量def my_def():     print('直接调用')b = my_def()那么上面b=my_def()应该是将my_def()函数赋给变量b,为什么赋值过程中my_def()函数就被执行了?

解释器

解释器

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

machi 发表于 2021-11-22 22:04
调用即执行
weefun92 发表于 2021-11-22 22:13
你如果想把函数赋值给变量b,应该这么写
[Python] 纯文本查看 复制代码
b = my_def


[Python] 纯文本查看 复制代码
b = my_def() 
这段代码是将 my_def() 函数执行过后,将该函数的返回值赋值给 b
PGH927 发表于 2021-11-22 23:09
加了()表示调用这个函数,调用就要执行
如果想让函数赋值要这样写
b=my_def
似水流年2015 发表于 2021-11-23 00:14
weefun92 发表于 2021-11-22 22:13
你如果想把函数赋值给变量b,应该这么写

[mw_shl_c ...

my_def( )里没有写return,应该不能说是把返回值 赋值给b吧??????
只能说是执行了它???
我只是个菜鸟
luyers 发表于 2021-11-23 07:25
似水流年2015 发表于 2021-11-23 00:14
my_def( )里没有写return,应该不能说是把返回值 赋值给b吧??????
只能说是执行了它???
我只 ...

python函数 如果不写return 默认return None
weefun92 发表于 2021-11-23 08:04
luyers 发表于 2021-11-23 07:25
python函数 如果不写return 默认return None

正解,没有具体的返回值就默认返回None
13286246768 发表于 2021-11-23 08:33
有括号代表实例化 已经去调用了这个函数 那就执行函数 函数有个打印语句 执行即打印控制台
zucker 发表于 2021-11-23 09:33
你这个没有值啊
MyModHeaven 发表于 2021-11-23 14:19
python 是一种脚本语言,脚本语言采用解释的方式执行,解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程,而且是从上到下解释。
当运行这三行代码的时候,解释器先看def语句,然后看函数体,最后看赋值语句。在看赋值语句之前,不会执行print语句,只要没有语法错误就走马观花地过去了。但是当看到赋值语句的时候,就会调用函数,看看等号右侧到底是个什么东西。最后证明,b = None,至于控制台输出 直接调用 就是函数在执行的过程中的产物
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-25 18:51

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表