这似乎应该是如此简单,但我有一些严重的问题。我想要做的就是看用户输入是否匹配2个字母的表达式。我想我最大的问题是,我对re库不是很熟悉,文档也没有太多帮助。Python:比较sys.argv与字符串
这是我到目前为止已经试过:
尝试1
if re.match(sys.argv[3], "GL", re.I):
input_file_path = "V:\\test"
尝试2
if re.ignorecase(sys.argv[3], "GL"):
input_file_path = "V:\\test"
尝试3
if sys.argv[3] == "GL":
input_file_path = "V:\\test"
我调用程序的方式运行:filename.py tester test GL “测试仪”和“测试”还没有真正使用。
编辑:我发现我的主要问题。我正在调用一堆if语句而不是elif。所以最后一个说else:exit()总是被击中(因为我正在测试第一个if)。新手的错误
你记得说sys.argv [0]是脚本的名字吗? – Trevor 2012-07-20 16:10:28
1)'domain'是否等于'sys.argv [3]'?2)如果字符串应该完全匹配“GL”,不要打扰使用're'模块,这是更一般的比较。只要使用简单的字符串比较,如第3次尝试。 – chepner 2012-07-20 16:12:09
@Trevor是的,当我打印sys.argv [3]它打印出GL。是的,域是平等的(我编辑该部分) – LiverpoolFTW 2012-07-20 16:13:34