我正在嘗試運行我在 Python3 中使用 Python2 程序編寫的程序。我正在嘗試對其語法進行任何必要的更改以使其正常工作,但我被困在以下代碼行中。raise AttributeError, fn + ' is not a search function in search.py.'當我在 Python2 中運行它時它工作正常,但是在嘗試在 Python3 中運行它時我不斷收到以下語法錯誤。Traceback (most recent call last): File "autograder.py", line 345, in <module> moduleDict[moduleName] = loadModuleFile(moduleName, os.path.join(options.codeRoot, cp)) File "autograder.py", line 134, in loadModuleFile return imp.load_module(moduleName, f, "%s.py" % moduleName, (".py", "r", imp.PY_SOURCE)) File "/usr/lib/python3.6/imp.py", line 235, in load_module return load_source(name, filename, file) File "/usr/lib/python3.6/imp.py", line 172, in load_source module = _load(spec) File "<frozen importlib._bootstrap>", line 684, in _load File "<frozen importlib._bootstrap>", line 665, in _load_unlocked File "<frozen importlib._bootstrap_external>", line 674, in exec_module File "<frozen importlib._bootstrap_external>", line 781, in get_code File "<frozen importlib._bootstrap_external>", line 741, in source_to_code File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed File "searchAgents.py", line 71 raise AttributeError, fn + ' is not a search function in search.py.' ^SyntaxError: invalid syntax
1 回答

慕容森
TA貢獻1853條經驗 獲得超18個贊
這種引發異常的語法已從 python 3中刪除
您需要將異常代碼更改為:
raise AttributeError(fn + ' is not a search function in search.py.')
這個問題中提供的答案更詳細 - Manually raise (throw) an exception in Python
添加回答
舉報
0/150
提交
取消