O VSCode não pode ler a entrada do usuário durante a depuração de um código Python no IntegratedTerminal
Neste código python de duas linhas:
string = input("What's your name? ")
if string != '': print('Hello, ' + string + '!')
Enquanto executo a depuração, ele aguarda a entrada do usuário. Depois de digitar um nome, o Terminal (Console de Depuração do Python) para ali, a linha print () nunca é executada. Veja a imagem abaixo
O arquivo launch.json está abaixo (como padrão):
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python: Current File",
"type": "python",
"request": "launch",
"program": "${file}",
"console": "integratedTerminal"
}
]
}
Se eu executar este código sem depuração, está tudo OK.
NOTA: O depurador funciona bem antes. Este problema aconteceu recentemente. Agradeço muito qualquer ajuda ou sugestão.
Respostas
Depois de reverter a extensão python para sua versão anterior (v2020.7.96456), o problema desapareceu e o depurador pode avançar para a próxima linha de código e funcionar corretamente.
Embora eu não tenha provas concretas de por que a versão mais recente (v2020.8.101144) faz com que o depurador pare de aceitar a entrada do usuário, pelo menos reverter para uma versão anterior pode ser uma solução temporária, até que futuras revisões resolvam esse problema.