在python中打印变量插值时出错
我是python新手,在python中面临变量插值概念的问题 我已经写了一个方法来检查参数,但是它在打印行时给出了错误在python中打印变量插值时出错,python,variables,interpolation,Python,Variables,Interpolation,我是python新手,在python中面临变量插值概念的问题 我已经写了一个方法来检查参数,但是它在打印行时给出了错误 import re import sys import os.path def CheckArgument(argv) : for arg in argv : if (re.match('^-a$|^-b$|^-c$',argv) != 1) : if os.path.isfile(arg) != 1 :
import re
import sys
import os.path
def CheckArgument(argv) :
for arg in argv :
if (re.match('^-a$|^-b$|^-c$',argv) != 1) :
if os.path.isfile(arg) != 1 :
print ("file %s doesnot exists", % arg)
#above line is giving error
elif re.match('-help',arg) == 1 :
print "......."
CheckArgument(sys.argv)
首先,
re.match()
返回一个MatchObject
实例,而不是整数。表情
re.match('^-a$|^-b$|^-c$',argv) != 1
永远都是真的。只需使用而不是:
if not re.match('^-a$|^-b$|^-c$', argv):
以及:
您需要从打印语句中删除,
;%
运算符作用于左侧的字符串,但这并不意味着在两个字符串之间不应有逗号:
print ("file %s doesnot exists" % arg)
看起来好像您正在尝试解析命令行参数。你可以用这个来代替
print ("file %s doesnot exists" % arg)