zoukankan      html  css  js  c++  java
  • globals()函数,实现将参数设置为系统的全局变量

    
    import unittest
    import requests
    
    
    
    class TestA(unittest.TestCase):
        def setUp(self):
            self.s = requests.session()
    
        def tearDown(self):
            print('结束')
            
        def test_a(self):
            '''用例a'''
            globals()["a"] = "aaaaaa"    # 用例a的返回值
    
            # 返回值先给全部办理,存到字典对应key
            print('你的值是什么', globals().keys())
            # 你的值是什么 dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__file__', '__cached__', '__builtins__', 'unittest',                         'requests','TestA', 'a']) 可以注意到 a 已经存到了global()函数的字典中去了,如果要在下个接口使用的话,直接global().get('a')就可以取到值,至于拿到值以后在下个接口里面怎么传,
    就要看下个接口的参数都有什么了,视情况而定
    
            print('你的值是什么', globals().values())
            self.assertEqual(globals()["a"], "aaaaaa")
    
        def test_b(self):
            '''用例b'''
    
            # 在用例test_a中全局变量参数global(),通过globals().keys()查看到已经把字典{'a':'aaaaaa'}
            # 的值保存到了全局变量内部,并且在用例test_b中可以使用globals().get('a') 获取到对应的value
            # 然后把value值通过一个参数使用到用例test_b中。
            # 这样就实现了,上个接口返回参数,下个接口进行调用
    
            b = globals().get('a')  # 引用用例a的返回值
            print("用例b引用用例a的返回值:%s"%b)
            result_b = b+"111"
            self.assertEqual(result_b, "aaaaaa111")
    
    if __name__ == '__main__':
        unittest.main()
    
    
    
    
    
    
    # Global.py文件
    验证一下global()函数的类型和里面的值
    dic = 'name'
    
    globals()[dic] = 'luzhaoshan'
    
    print(globals())
    print(globals().keys())
    print(globals().values())
    
    下面是打印结果*****************************
    {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x000000000214C2B0>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'E:/PythonProject/202011月份复习/字典取值.py', '__cached__': None, 'dic': 'name', 'name': 'luzhaoshan'}
    dict_keys(['__name__', '__doc__', '__package__', '__loader__', '__spec__', '__annotations__', '__builtins__', '__file__', '__cached__', 'dic', 'name'])
    dict_values(['__main__', None, None, <_frozen_importlib_external.SourceFileLoader object at 0x000000000214C2B0>, None, {}, <module 'builtins' (built-in)>, 'E:/PythonProject/202011月份复习/字典取值.py', None, 'name', 'luzhaoshan'])
    
    
    
    
    
    
    
    
  • 相关阅读:
    剖析并利用Visual Studio Code在Mac上编译、调试c#程序【转】
    算法题—百灯判熄
    聪明的情侣算法题
    C#中&与&&的区别
    C# 日期格式精确到毫秒 【转】
    C#关于窗体的keysdown事件,无法获取到焦点
    百度,迅雷,华为,阿里巴巴笔试面试
    对 Linux 新手非常有用的 20 个命令
    阿里面试题2015
    Ant工具 ant的安装与配置 ant作用
  • 原文地址:https://www.cnblogs.com/ludundun/p/14052162.html
Copyright © 2011-2022 走看看