其他语句无效语法

时间:2015-03-17 17:58:36

标签: python python-2.7 if-statement syntax-error

我的代码在最后SyntaxError: invalid syntax语句中抛出else错误(下面代码中的倒数第二行)。任何人都可以看到是什么导致这个?我在CentOS上运行Python 2.7。

def mintosec(time):
    foo = time.split(':')
    if re.match('o|O',foo[0]) == True: #check to see if any zeros are incorrectly labled as 'o's and replace if so
            div = list(foo[0])
            if div[0] == 'o' or 'O':
                    new = 0
            else:
                    new = div[0]
            if div[1] == 'o' or 'O':
                    new1 = 0
            else:
                    new1 = div[1]
            bar = int(str(new)+str(new1))*60
    else:
            bar = int(foo[0]) * 60

2 个答案:

答案 0 :(得分:2)

你做不到:

if div[0] == 'o' or 'O':
    new = 0

您必须声明如下:

if div[1] == 'o' or div[1] == 'O':
    new1 = 0

执行此检查的更好方法是:

 if div[1].lower() == 'o'

答案 1 :(得分:1)

另一种测试超过1项的方法是:

if div[1] in {'o', 'O'}:
    # stuff.

How do I test one variable against multiple values?

中所述