当没有提供argv时如何打印错误

问题描述 投票:0回答:2

请帮助。

我遇到一种情况,我想为我的脚本提供一个IP地址,当不提供该地址时,我想打印一个错误消息。

    ip = sys.argv[1]


    if len(ip) == 13:
            print "IP address format correct"
    else:
            print "wrong IP format"
            exit()

我知道我将不得不继续努力,但稍后再说...

python python-2.7
2个回答
2
投票

您可以检查所提供的args的长度是否等于2。第一个参数始终是存储在argv[0]的文件名。因此,您必须检查长度是否为2或更大。

尝试一下:

if len(sys.argv) < 2:
    print("Please provide an IP to proceed.")
    return

ip = sys.argv[1]


if len(ip) == 13:
    print "IP address format correct"
else:
    print "wrong IP format"
    exit()

1
投票

以下代码:

import sys

if __name__ == "__main__":
    # print the given IP to the script
    ip = sys.argv[1]
    print(ip)

    # your condition
    if len(ip) == 13:
        print("IP address format is correct")
    else:
        print("wrong IP format")
        exit()

另存为脚本test.py,并将脚本调用为:

python3 test.py 255.255.255.0

将为IP输入示例做的事比您想做的事少得多:255.255.255.0

© www.soinside.com 2019 - 2024. All rights reserved.