Jupyter Notebook代码运行正常,Visual Studio持续运行单元格无输出
解决VS Code中猜数字代码单元格持续运行无输出的问题
这段猜数字代码在Jupyter Notebook中可正常运行,但在Visual Studio Code的交互式单元格中运行时,会一直处于持续运行状态,无法输出结果:
import random chance = 0 random_integer = random.randint(0, 10) while chance <= 2: n = int(input("Guess the number between 1 to 10:")) if (n < 0 or n > 10): print("number out of range") chance+=1 else: # Generate a random integer between 0 and 10 (inclusive) if (n == random_integer): print("You Win") break elif (n > random_integer): print("number guessed is greater than the lucky number") chance +=1 elif (n < random_integer): print("number guessed is less than the lucky number") chance+=1 print("Lucky number was:",random_integer)
问题原因
VS Code的Jupyter交互式单元格处理input()函数时,不会直接在输出面板接收输入,而是会弹出独立的交互式输入框。如果未在该输入框中提交内容,程序会一直等待输入,表现为持续运行无输出。
解决方法
- 使用交互式输入框:代码运行到
input()时,VS Code右上角会弹出小型输入框(或底部出现"Jupyter: Interactive Input"面板),在其中输入猜测的数字并回车,程序即可继续执行。 - 切换到终端运行:右键代码文件,选择「在终端中运行Python文件」,程序会在终端窗口启动,此时可直接在终端输入内容,无需依赖交互式输入框。
额外排查点
- 确认VS Code左下角的Python解释器已关联到你安装的最新版本。
- 检查VS Code的Jupyter插件是否为最新版本,旧版本插件可能存在输入交互bug。
内容的提问来源于stack exchange,提问作者Omkar Lingvat
相关产品推荐
相关产品推荐

