Скопируйте код Python без отступов из VSCode для вставки в консоль отладчика - PullRequest
0 голосов
/ 06 августа 2020

У меня есть вложенный код Python, например:

def foo(bar):
  if bar:
    print("Lookee here!")
    print("Both of these lines")

breakpoint()

Я хочу иметь возможность выделять обе строки печати и копировать и вставлять их в консоль отладчика.

Вы можете щелкнуть Alt (мультикурсор), а затем shift + end (выбрать несколько курсоров), но а) это легко испортить / сложно, и б) генерирует ошибку *** SyntaxError: unexpected EOF while parsing.

Идеи? Условия поиска? Плагины?

Обновление:

С терминала:

(.venv) $ python3
Python 3.7.8 (default, Jul  8 2020, 14:16:55) 
[Clang 11.0.0 (clang-1100.0.33.17)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>     print("Lookee here!")
  File "<stdin>", line 1
    print("Lookee here!")
    ^
IndentationError: unexpected indent
>>>     print("Both of these lines")
  File "<stdin>", line 1
    print("Both of these lines")
    ^
IndentationError: unexpected indent

1 Ответ

1 голос
/ 26 августа 2020

Это потому, что вы копируете эти два предложения с несоответствующим пустым пространством, что нарушает правила синтаксиса python. Когда вы выберете их, поместите курсор перед первым предложением print(), затем нажмите:

Ctrl+Alt+Down -> Shift+Alt+Right

, затем скопируйте и вставьте их в консоль отладки, вы можете получить правильный результат: введите описание изображения здесь

...