Python调用函数问题?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python调用函数问题?相关的知识,希望对你有一定的参考价值。
为什么调用有的函数需要加(),有的不用加,如下图content不需要加,decode需要加
content是个Response对象的属性 (有点类似变量), 而decode是bytes的一个方法方法在使用(调用/执行)的时候是需要加括号的, 如果不加括号就会返回这个方法本身(类似函数指针), 而变量/成员字段/属性是不能加括号的(除非它实现了__call__()方法)追问
content不是requests下面的吗?和response是什么关系?
这种调用属性或者方法的方式,可以一直调用吗?(r.content.encode().decode()...像这种一直...下去)
content是r的属性, r是Response类的对象(requests.get()方法返回值)
可以, 函数是可以连续调用的, 调用的是前面那个方法返回的对象的成员方法
加的定义的时候是函数,不加的定义的时候是属性/字段 参考技术B 就像tkinter(python的gui库),
你说函数加括号,它可以加,用lambda,
默认不加,因为这是一个参数,就像:
def do(command):
--command("hello")
这时候,调用do函数是不加参的:
do(print)
如果用lambda:
do(lambda a:print("hello everybody!"))
就不是显示hello而是hello everybody!了
以上是关于Python调用函数问题?的主要内容,如果未能解决你的问题,请参考以下文章