我有以下代码:
-- content of sys.argv is 2 and 10 which is assigned to the specified variables.
wthreshold, cthreshold = sys.argv
def Alerting():
if PatternCount < wthreshold:
print
print LRangeA
print
print 'PatternMatch=(' + str(PatternCount) + '),' + 'ExactTimeFrame[' + str(BeginSearchDVar) + ',' + str(EndinSearchDVar) + ']=(Yes)'
print
sys.exit(0)
elif PatternCount >= wthreshold and PatternCount < cthreshold:
print
print LRangeA
print
print 'PatternMatch=(' + str(PatternCount) + '),' + 'ExactTimeFrame[' + str(BeginSearchDVar) + ',' + str(EndinSearchDVar) + ']=(Yes)'
print
sys.exit(1)
elif PatternCount >= cthreshold:
print
print LRangeA
print
print 'PatternMatch=(' + str(PatternCount) + '),' + 'ExactTimeFrame[' + str(BeginSearchDVar) + ',' + str(EndinSearchDVar) + ']=(Yes)'
print
sys.exit(2)
else:
print
print LRangeA
print
print 'PatternMatch=(' + str(PatternCount) + '),' + 'ExactTimeFrame[' + str(BeginSearchDVar) + ',' + str(EndinSearchDVar) + ']=(Yes)'
print
sys.exit(3)
LRangeA = """this line 1
another line 2
one more line 3
line 4
line 5
line 6
line 7
line 8"""
PatternCount = len(LRangeA.split('\n'))
Alerting()
当我运行这段代码时,它似乎没有正确地检查if语句中的数字。即使PatternCount的值是8,代码似乎总是进入第一个if语句。你知道吗
wthreshold
和cthreshold
是来自命令行参数的字符串。如果要用数字比较,需要将它们转换为数字:相关问题 更多 >
编程相关推荐