前言:
此时你们对“forin字典python”大致比较着重,你们都想要了解一些“forin字典python”的相关知识。那么小编同时在网摘上汇集了一些对于“forin字典python””的相关资讯,希望看官们能喜欢,大家快快来学习一下吧!最近在写一个脚本的时候,想添加一个传参使脚本更易用,然后初步的源码对于每个参数都由一行代码进行生成,考虑到后期可能会增加更多的参数,所以需要对现在的代码进行改造,现有代码如下:
import argparsedef main(): #all_info :接收所有传入的信息 all_info = argparse.ArgumentParser(description="设置测试参数") all_info.add_argument('-host', '--host', required=True) all_info.add_argument('-p', '--port', required=True) all_info.add_argument('-t', '--time', required=True) all = all_info.parse_args() print("传入的所有信息(命名空间)如下:", all) ##下面开始拆分信息,all.xxx中,xxx为上面定义的--后面的字符串 host = all.host port = all.port time = all.time print("主机地址:[%s]\n主机端口:[%s]\n超时时间:[%s]\n" %(host, port, time))if __name__ == '__main__': main()
然后运行
此时运行没问题,但是下面这段代码的写法不利于后期扩展
all_info.add_argument('-host', '--host', required=True) all_info.add_argument('-p', '--port', required=True) all_info.add_argument('-t', '--time', required=True)
所以这时候就通过字典+for的方式对代码进行重构,重构如下:
import argparsedef main(): #all_info :接收所有传入的信息 all_info = argparse.ArgumentParser(description="设置测试参数") data = {'-host': '--host', '-p': '--port', '-t': '--time', '-f': '--file'} for i in data: parameter = i parameters = data.get(i) all_info.add_argument(parameter, parameters, required=True) all = all_info.parse_args() print("传入的所有信息(命名空间)如下:", all) ##下面开始拆分信息,all.xxx中,xxx为上面定义的--后面的字符串 host = all.host port = all.port time = all.time file = all.file print("文件选择:[%s]\n主机地址:[%s]\n主机端口:[%s]\n超时时间:[%s]\n" %(file, host, port, time))if __name__ == '__main__': main()
运行结果:
此时,如果后期需要添加相关传参,直接在字典上增加即可,精简了更多代码,也利于修改,至此,教程结束!
更多Python教程可以在今日头条关注我,或者去csdn搜索“坐公交也用券”
版权声明:
本站文章均来自互联网搜集,如有侵犯您的权益,请联系我们删除,谢谢。
标签: #forin字典python