Python 诸如请求之类的库如何具有“;期间”;功能?
例如:Python 诸如请求之类的库如何具有“;期间”;功能?,python,python-3.x,Python,Python 3.x,例如: requests.get()是一个带句点的函数。我将如何制作自己的函数,例如: def foo(): 返回“bar” 然后像这样调用所述函数: x.foo() 不是这样的: foo()使用: 或者使用静态方法: class x: @staticmethod def foo(): return 'bar' 如果我理解正确的话,你想要这样的东西: class x: def __init__(self): pass def f
requests.get()
是一个带句点的函数。我将如何制作自己的函数,例如:
def foo():
返回“bar”
然后像这样调用所述函数:
x.foo()
不是这样的:
foo()
使用:
或者使用静态方法
:
class x:
@staticmethod
def foo():
return 'bar'
如果我理解正确的话,你想要这样的东西:
class x:
def __init__(self):
pass
def foo(self):
print "Hello"
如果您尝试执行,例如:b=x(),b.foo()将调用foo您将注意到您还必须执行
导入请求。这是因为请求
是一个Python模块或Python包。如果你愿意,你可以自己写
#src/library.py或src/library/__init.py
#^-模块------^^-包-------------^
def foo():
返回“bar”
#src/main.py
导入库#另一个python文件的名称
x=library.foo()
断言x=='bar'
请求
是一个包,获取
是该包命名空间中的一个函数。点只是访问某个属性的操作符,它不属于名称。您可以创建一个模块(或包)并将函数放在其中,或者使用静态方法创建一个类。但是为什么要这样做呢?如果x
是类的实例,而foo()
是类中的函数,则可以调用带句点的函数。这里,请求
是一个包含类和函数的库。因此,您可以使用
访问其中的函数。使用静态方法的好处是什么?
class x:
def __init__(self):
pass
def foo(self):
print "Hello"