Я пытаюсь работать с script, который управляет другим script в Python, script, который должен быть изменен, имеет структуру вроде:
class SomethingRecord(Record):
description = 'This records something'
author = 'john smith'
Я использую ast
для нахождения номера строки description
, и я использую некоторый код для изменения исходного файла с новой строкой строки описания на номере строки. Пока все хорошо.
Теперь единственной проблемой является description
, иногда это многострочная строка, например
description = ('line 1'
'line 2'
'line 3')
или
description = 'line 1' \
'line 2' \
'line 3'
и я имею только номер строки первой строки, а не следующие строки. Поэтому мой однострочный заменитель выполнит
description = 'new value'
'line 2' \
'line 3'
и код сломан. Я понял, что если я знаю как lineno начала и конца/количества строк назначения description
, я мог бы восстановить свой код, чтобы справиться с такой ситуацией. Как получить такую информацию в стандартной библиотеке Python?