python进阶(三) 内建函数getattr工厂模式

不前进,不倒退,停止的状态是没有的.

 getattr(pyMethod(),'out%s'%str)()  注意pyMethod()和最后的()   这里之所以这么写pyMethod()加括号是实例化类对象,最后的括号,因为getattr函数反射后,是一个方法对象。

这里使用了multprocessing.Pool进程池,来动态增加进程

Linux and
python学习交流3群新开,欢迎加入,一起学习.qq 3群:563227894

从以上运行结果可以看出,一次最多执行了我们设定的4个进程。

getattr()这个方法最主要的作用是实现反射机制。也就是说可以通过字符串获取方法实例。  传入不同的字符串,调用的方法不一样。

 

这样的话,想想是不是用途很多,我可以把方法名配置到文件中,读取时使用getattr动态去调用。

Linux and
python学习交流3群新开,欢迎加入,一起学习.qq 3群:563227894

不前进,不倒退,停止的状态是没有的.

运行结果:

Linux and
python学习交流1,2群已满.

python多进程并发机制:

运行结果:

 

 

C:Python27python.exe D:/weixin/temp/testtmp.py
0 ----------- 0
0 ----------- 1
0 ----------- 2
0 ----------- 3
1 ----------- 0
1 ----------- 1
1 ----------- 2
1 ----------- 3
0 ----------- 4
0 ----------- 5
0 ----------- 6
0 ----------- 7
1 ----------- 4
1 ----------- 5
1 ----------- 6
1 ----------- 7
0 ----------- 8
0 ----------- 9
1 ----------- 8
1 ----------- 9
_____success_____

Process finished with exit code 0

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注