我尝试传递bool类型的参数,并在运行代码时运行python main.py --tcpip=False。这对我不起作用。
我尝试将它更改为str类型,它工作得非常好。
import argparse
parser = argparse.ArgumentParser(description="SSD and Gender Detection")
parser.add_argument("--tcpip",default = "True",type=str,help='transfer data via tcp/ip')
args = parser.parse_args()
print(args.tcpip)
if __name__ == '__main__':
if(args.tcpip == "True"):
send_data(count)即使我用python main.py --tcpip=False启动代码,它也会打印True
发布于 2019-06-19 22:20:43
您应该使用action参数:
parser.add_argument("--tcpip",action='store_false',help='transfer data via tcp/ip')现在,默认情况下tcpip的值为True,当使用参数--tcpip运行时,该值将更改为False。
>>> python main.py
True
>>> python main.py --tcpip
False然后,您可以将条件更改为:
if args.tcpip:
send_data(count)更多阅读- here
https://stackoverflow.com/questions/56669868
复制相似问题