首页 > 编程语言 >python-当函数赋给变量时带括号与不带括号的区别

python-当函数赋给变量时带括号与不带括号的区别

时间:2022-09-30 14:46:19浏览次数:40  
标签:函数 时带 oh python 括号 test print type

python-当函数赋给变量时带括号与不带括号的区别

参见下面的例子:

def test():
    print("call the test func")
    return 0

p = test
print("type(p): ", type(p))

print('----------------------------------')

p = test()
print("type(p): ", type(p))

# 相当于是给print()函数取了一个别名
p = print
p("oh, oh, oh")

输出:

type(p):  <class 'function'>
p =  <function test at 0x000002BBFF0FA4D0>
----------------------------------
call the test func
type(p):  <class 'int'>
p =  20
oh, oh, oh

结论:

  • 当不带括号的时候相当于是把这个函数对象赋值给变量(注意:并不会真的去执行该函数)
  • 当带括号的时候相当于是把这个函数的返回值赋值给变量(由于要得到返回值,所以会真的执行)
  • 当不带括号的时候将函数赋值给变量,相当于是给该函数新取了一个别名。

标签:函数,时带,oh,python,括号,test,print,type
From: https://www.cnblogs.com/yongdaimi/p/16744840.html

相关文章

  • Python+pandas把excel的多个sheet提取成单独的xls文件
    importpandasaspdimporttimerootdir=r"G:\20220613库存\分类\\"rootexcel=r"G:\20220613库存\总表.xlsx"#获取所有sheet名df0=pd.ExcelFile(rootexcel)sheet_......
  • python之sys模块详解
    处理命令行参数 在解释器启动后,argv列表包含了传递给脚本的所有参数,列表的第一个元素为脚本自身的名称。sys.argv[0]表示程序自身sys.argv[1]表示程序的第一个......
  • python基础: 类和对象
    类里面定义的叫方法。类外面定义的叫函数  静态方法:不允许加self类方法:必须加cls实例方法:必须加self ......
  • python 分支,循环,换行
    1.分支1.1传统的if语法结构变成了条件表达式`age=16ifage<18:print("抱歉,未满18岁禁止访问。")else:print("欢迎您来")抱歉,未满18岁禁止访问。-->print("抱......
  • python 批量修改文件名(针对目标文件夹不包括子文件)
    存在问题:如何对文件夹中的文件名进行批量编辑解决方案:采用os.listdir(file_path)遍历文件夹提取,然后进行相应编辑,该方法只针对目标文件夹不包括子文件。如果想对目标文......
  • vscode 指定 anaconda创建的python虚拟环境
    1点击左下角的设置。2点击commandpalette。3搜索框输入Python:SelectInterpreter。4选择虚拟环境。......
  • python小技巧
    关于ipython1Tab补全从外观上,IPythonshell和标准的Python解释器只是看起来不同。IPythonshell的进步之一是具备其它IDE和交互计算分析环境都有的tab补全功能。在s......
  • Python 环境管理
    Python环境管理Python版本、虚拟环境、依赖、包管理曾几何时,开发人员的笔记本电脑上只有一个Python版本和一个Python环境,一切运行良好。直到有一天,您需要处理多个项......
  • python 浮点数计算
    FloatingPointMath先贴个代码,有空再写:importdecimalimportfractions#2017096.82/10000print(f"2017096.82/10000=>{2017096.82/10000}")ori=frac......
  • Python实现列表中嵌套字典按照给定key值去重
    需求:对下列数据按任意字段去重需要达到的效果:按照id进行去重,id重复则算重复。重复的取第一个数据。按照name和tel去重,name和tel都重复则算重复。重复的取第一个数据。......