Я хочу использовать vscode и jupyter для интерактивного программирования на python. Все работает, за исключением того, что ячейки / блоки распознаются только тогда, когда они не имеют отступ или если код не имеет отступ. Ранее я использовал spyder там, где это возможно.
Мне нравится это поведение, потому что оно полезно для отладки и разработки, когда у вас есть более длинные определения классов или функций (с отступом), но вы просто хотите запустить пару строк из класса / функции в интерактивном режиме.
Я попробовал официальное расширение Python и расширение Jujpter Don Jayamanne. Никто не позволил желаемое поведение.
Обновление: я только что понял, что разные версии Python ведут себя по-разному в этом отношении. В python 3.6.6 и 3.7.2 отступы вызывают ошибку, тогда как в python 3.6.7 или 3.6.8 отступ игнорируется и выполняется ячейка. Есть ли объяснение, почему разные версии ведут себя по-разному или имеют явные настройки для этого?
#%%
print('This works')
#%%
print('This does not work, as it raises an indent error')
print('Update: This works in python version 3.6.7 or 3.6.8')
#%%
print('This does not work, as it is not recognized as a cell/block')