第一种:class内部def函数与def函数之间的调用
test_getIdentify 函数调用test_getLastuser函数的返回值,只要在test_getIdentify 函数内写上self.test_getLastuser()即可
class testlogin(unittest.TestCase): def test_getIdentify(self): '''先调用上一次用户登录的信息,返回展示在页面上''' key=self.test_getLastuser() data={"username":key} url="http://10.17.17.31:8080/LandTaxSys/user/getIdentity" headers={'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'} r=requests.get(url,params=data,headers=headers) print(r.text) return r.text def test_getLastuser(self): '''获取上一次用户登录的用户名''' url="http://10.17.17.31:8080/LandTaxSys/operatelog/getLastUser" r=requests.get(url) return r.text
第二种 不同文件夹下的py之间的函数调用,如下图
第三种:Class之间函数的调用关系
假设有Class A 和 Class B两个类,Class A中定义了a(),Class B中定义了b().
现在我想在Class B中调用 Class A中的函数a()。此处介绍三种调用方法:
方法一:
在Class B中所定义的fuction()中声明Class A的对象a,然后用对象a来调用Class A的函数a().
最后在main中声明Class B的对象b,让b调用该类中的fuction().
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- class A():
- def __init__(self,parent):
- self.parent = parent
- def a(self):
- print 'Class A'
- class B():
- def fuction(self):
- a = A(None)
- a.a()
- if __name__ == '__main__':
- b = B()
- b.fuction()
方法二:
在Class B的__init__()中将Class A和Class B产生关联,具体方法如下code。
首先在main中声明Class A的对象a,然后将对象a传入到Class B的__init__(self,object)中,这样self.object就指向Class A。
就可以调用Class A中的函数了。
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- class A():
- def __init__(self,parent):
- self.parent = parent
- def a(self):
- print "Class A"
- class B(object):
- def __init__(self,object):
- self.object = object
- self.object.a()
- def b(self):
- print "Class B"
- if __name__ == '__main__':
- a = A(None)
- b = B(a)
- b.b()
方法三:
直接在Class B中声明Class A的对象,该对象是Class B的self.A_object。
- #!/usr/bin/env python
- # -*- coding: utf-8 -*-
- class A():
- def a(self):
- print "Class A"
- class B(object):
- def __init__(self):
- self.A_object = A()
- self.A_object.a()
- def b(self):
- print "Class B"
- if __name__ == '__main__':
- b = B()
- b.b()