python下把A类当参数传给B类下面方法,怎么可以获取A类下的方法返回值呢

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python下把A类当参数传给B类下面方法,怎么可以获取A类下的方法返回值呢相关的知识,希望对你有一定的参考价值。

把类DebugInterceptor当作参数传给 AsyncMitmProxy类下面的register_interceptor方法,我怎么可以在ajkproxy类里获取到DebugInterceptor类下面的do_request方法的返回值呢

class mmproxy ():
def start(self):
self.proxy = AsyncMitmProxy()
self.proxy.register_interceptor(DebugInterceptor)
self.proxy.serve_forever()

def filter_request(self):
pass

def geturlinfo(self):
print('#' * 200)
ss = self.proxy.do_request
print ss

class MitmProxy(HTTPServer):
print 5

def __init__(self, server_address=('', 8080), RequestHandlerClass=ProxyHandler, bind_and_activate=True, ca_file='ca.pem'):
HTTPServer.__init__(self, server_address, RequestHandlerClass, bind_and_activate)
self.ca = CertificateAuthority(ca_file)
self._res_plugins = []
self._req_plugins = []

def register_interceptor(self, interceptor_class):
if not issubclass(interceptor_class, InterceptorPlugin):
raise InvalidInterceptorPluginException('Expected type InterceptorPlugin got %s instead' % type(interceptor_class))
if issubclass(interceptor_class, RequestInterceptorPlugin):
self._req_plugins.append(interceptor_class)
if issubclass(interceptor_class, ResponseInterceptorPlugin):
self._res_plugins.append(interceptor_class)

class DebugInterceptor(RequestInterceptorPlugin, ResponseInterceptorPlugin):
def do_request(self, data):
if 'stb' in data:
urls = urlparse(data)
print urls
urlss = urlunsplit(data)
print urlss
# print '>> %s' % repr(data[:65536])
return data

def do_response(self, data):
if 'stb' in data:
print '<< %s' % repr(data[:65536])
return data

参考技术A /*java中,有两个类A和B,B类中包含有参数构造方法b1和无参数方法b2,
* 那在A类中new个B类对象并调用方法b2。
* 那么new的时候是不是要加参数?
* 调用方法b2的时候构造方法是不是也调用了?*/
class A
public A()
System.out.println("System.out.println--调用无参的B的构造方法");
B b=new B();//如果需要调用B的无参构造方法,则不加参数
System.out.println("System.out.println--调用有参的B的构造方法");
B b2=new B(7);//如果需要调用有参的构造方法,则new的时候则添加参数,调用无参构造方法。


class B
public B()
System.out.println("调用无参构造方法");

public B(int b2)
System.out.println("调用有参构造方法");


public class TestABMain
public static void main(String[] args)
// TODO Auto-generated method stub
A a=new A();


代码如图:

运行结果如图:

以上是关于python下把A类当参数传给B类下面方法,怎么可以获取A类下的方法返回值呢的主要内容,如果未能解决你的问题,请参考以下文章

python 属性,类方法和静态方法

Python面向对象进阶

Python的不定长参数研究

如何用参数传给Spring定时任务,以致可任意调整定时时间

python函数

我解释一下python的类方法为啥要写一个self参数