Ошибка Can't Parse при попытке использовать 2to3.py для преобразования кода python в python34

У меня возникли трудности с ошибкой, которую я продолжаю получать, когда пытаюсь преобразовать код python2.7 в python3. Я знаю, что этот код работает в python2.7. Однако, когда я пытаюсь преобразовать его в python3 с помощью 2to3.py, я получаю эту ошибку:

RefactoringTool: Can't parse ProAnalysis.py: ParseError: bad input: type=5, value='\t', context=('', (1562,0))

После поиска в Интернете я увидел, что некоторые люди сказали, что добавление -p решит проблему, однако, когда я добавил, я получаю только новую ошибку:

RefactoringTool: Can't parse ProAnalysis.py: ParseError: bad input: type=3, value="'Only using alignments greater than %.2f id and %.2f coverage'", context=('', (52,10))

Я не знаю, поможет ли просмотр исходного файла, однако он состоит из нескольких тысяч строк. Любая помощь будет очень оценена. Благодарю вас!

-Рэйчел


person Rachel    schedule 01.06.2016    source источник
comment
Можете ли вы более конкретно показать участок кода, что он не может разобрать/преобразовать в Python 3?   -  person HEADLESS_0NE    schedule 01.06.2016
comment
Может быть, ошибка RefactoringTool указала в ошибке номер строки 1562? Поэтому, если у вас есть разрешение показать миру часть вокруг этих строк, не стесняйтесь делать это, в противном случае я могу только предложить вам поискать в Google типичные проблемы преобразования из версии 2 в версию 3 и самостоятельно изучить источник ProAnalysis.py. ХТН   -  person Dilettant    schedule 01.06.2016
comment
\t — это вкладка. Если в вашем файле есть табуляции, преобразуйте их в пробелы. В любом случае, это хорошо.   -  person Alex Hall    schedule 01.06.2016


Ответы (1)


В значении context указаны номера строк и столбцов, поэтому вы должны проверить свой код там (как предложил Dilettant в комментариях к вопросу).

Предположительно, вы получите хорошее представление о том, что может отключить синтаксический анализатор 2to3.

person Eric O Lebigot    schedule 19.07.2019