Python中文
首页
教程
问答
标签
搜索
登录
注册
何时调用/引用函数,何时执行?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我对Python还比较陌生,我有一个(我猜)关于Python函数的基本问题</p> <p>我正在重新观看基础教程,以便真正了解更多的结构,而不仅仅是使用它们。我使用了教程中的一些基本代码,并尝试了不同的简单变体,但我不完全了解结果以及何时引用函数,即何时调用函数的返回值,何时执行函数</p> <pre><code>x=6 def example(): globx = x print(globx) globx+=5 print(globx) example() </code></pre> <p>这定义了函数,然后调用它来执行,当它被执行时,它打印6,然后打印11,如预期的那样</p> <p>现在:</p> <pre><code>x=6 def example(): globx = x print(globx) globx+=5 print(globx) print(example()) </code></pre> <p>我本来希望它打印为“None”,因为print正在寻找函数的返回值来打印它,但是example()没有返回值。取而代之的是6,11和无正在打印。所以我假设print(example())调用example()的返回值来打印它,但是在执行函数之前(如果我弄错了,请纠正我)</p> <p>即使我只是在函数定义之后将返回值赋给变量x=example(),它也会执行函数并打印6和11</p> <pre><code>x=6 def example(): globx = x print(globx) globx+=5 print(globx) x = example() </code></pre> <p>函数总是在被写出来的时候被执行吗((def中的Ecxcept) 有没有一种方法可以在函数返回值没有完全执行的情况下使用它? 例如,如果我有一个更复杂的代码,在某个时候我想使用函数返回值,但不希望它运行</p> <p>提前谢谢</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你会被函数返回什么和函数做什么弄糊涂</p> <p>在您的例子中,有一个函数有两个<code>print()</code>语句。这些语句与函数将返回的值无关,并将在每次调用函数<code>example()</code>时打印相应的值</p> <p>函数的返回值是使用<code>return</code>关键字定义的,如果没有定义,则返回值是<code>None</code>。显然,为了让函数返回一个值,需要执行函数</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
对从字符串的偶数位置返回最大整数的函数进行编码时出现问题
4 回答
对从数据库中选择的值进行类型测试
4 回答
对从数据库获取的线程注释进行分组
7 回答
对从文件中读取的列表进行排序?
2 回答
对从文件对话框加载图像有什么建议吗?
4 回答
对从文件导入的列表排序。。。Python
2 回答
对从文档中提取的数字列表调用sum()
2 回答
对从查询中提取的distict值进行排序
7 回答
对付布劳斯特_handlers.BlobstoreUploadHand
4 回答
对代码和变量使用dict
8 回答
对代码对象使用uncompyle6的正确方法是什么?
2 回答
对代码段的所有更改的时间表,以恢复b
4 回答
对代码的小改动会产生AttributeError(Python、Networkx)
2 回答
对以“test\开头的文件名也执行pydocstyle
8 回答
对以append模式打开的Python文件对象调用tell()如果不是手动查找,则返回0
2 回答
对以下代码中~的函数感到好奇
3 回答
对以十为单位的输入应用规范化
4 回答
对以完全相同的方式相互引用的两个列表(整数和卡片对象列表)进行排序
9 回答
对以数字开头的列运行Pandas查询(Python 3)
6 回答
对以连字符开头的参数使用python argparse模块
7 回答