if __name__ == '__main__'
的意思是:当该文件被直接运行时,if __name__ == '__main__'
之下的代码块将被运行;当该文件以模块形式被导入时,if __name__ == '__main__'
之下的代码块不被运行。
python xxx.py
,直接运行xxx.py文件
python -m xxx.py
,把xxx.py当做模块运行
argparse有三个主要函数
1.parser = augparse.ArgumentParser() 使用argparse的第一步是创建ArgumentParser对象
2.parser.add_argument('-p', '--port', default=5000, type=int, help='port to listen on')
3.args=parser.parse_args() 通过调用parse_args()来解析ArgumentParser对象中保存的命令行参数:将命令行参数解析成相应的数据类型并采取相应的动作,它返回一个Namespace
对象。
-p 和 --port 两个"- -"比一个“-”厉害 dest =port
大家都是相同数量的 - 的时候,谁前面算谁 -p 和 -prot dest=p.
dest 绝大部分的ArgumentParser动作为parse_args()方法返回的Namespace对象的属性进行赋值,而属性的名称是由参数dest决定的。对于必选参数来说,dest默认等于必选参数的字面值。