-4

(trimのtrimtemp用に)ループして、特定の文字列(modeltrim)に一致するものがあるかどうかを確認したいリストがあります。コードはほとんどの場合正常に実行されますが、ときどき次のエラーが発生します。

Traceback (most recent call last):
  File "/home/hostadl/PricesFinal.py", line 318, in <module>
    main()
  File "/home/hostadl/PricesFinal.py", line 215, in main
    match = re.search(r'{0}'.format(trimtemp), modeltrim, re.IGNORECASE)
  File "/usr/local/lib/python3.2/re.py", line 158, in search
    return _compile(pattern, flags).search(string)
  File "/usr/local/lib/python3.2/re.py", line 256, in _compile
    return _compile_typed(type(pattern), pattern, flags)
  File "/usr/local/lib/python3.2/functools.py", line 180, in wrapper
    result = user_function(*args, **kwds)
  File "/usr/local/lib/python3.2/re.py", line 268, in _compile_typed
    return sre_compile.compile(pattern, flags)
  File "/usr/local/lib/python3.2/sre_compile.py", line 491, in compile
    p = sre_parse.parse(p, flags)
  File "/usr/local/lib/python3.2/sre_parse.py", line 692, in parse
    p = _parse_sub(source, pattern, 0)
  File "/usr/local/lib/python3.2/sre_parse.py", line 315, in _parse_sub
    itemsappend(_parse(source, state))
  File "/usr/local/lib/python3.2/sre_parse.py", line 642, in _parse
    raise error("unbalanced parenthesis")
sre_constants.error: unbalanced parenthesis

あなたの助けをいただければ幸いです!

4

1 に答える 1

2

この行が問題のようです

match = re.search(r'{0}'.format(trimtemp), modeltrim, re.IGNORECASE)

format(trimtemp)が含まれているかを確認する必要があります。おそらく追加するだけで

print format(trimtemp)

前のラインで。おそらくそれは に意味のあるものを含ん()reます。おそらくre.escape(format(trimtemp))あなたが必要なものです

于 2012-06-28T02:33:16.797 に答える