执行VPython程序后冻结了VS Code集成终端

时间:2020-11-12 16:46:31

标签: python visual-studio-code vpython

当前在Visual Studio Code中运行Windows 10,python版本3.8.5。

每次我尝试使用vpython执行任何程序时,该程序都能正常工作,但会永久锁定我的集成终端,因此无法再使用它。它仍然显示以前运行的旧文本,但不接受任何新程序执行或不允许在终端中键入任何内容。我尝试过的所有其他程序都工作正常,但是任何使用vpython的程序都会冻结它。相同的vpython程序在IDLE中也可以正常工作。我已确保未选中“在兼容模式下运行此程序”。

MWE

from vpython import *

ball = sphere(pos=vector(-5, 0, 0), radius=0.5, color=color.cyan)

3 个答案:

答案 0 :(得分:0)

我很确定之前曾经遇到过这个问题,您已经编写了一些可以继续运行的代码,从而阻止了vs代码再次运行它。它没有冻结,只是持续运行您的代码。 您可以使用以下方法之一停止执行代码。

  1. 使用快捷键Ctrl + Alt + M。
  1. 按F1,然后选择/键入Stop Code Run。
  1. 右键单击“输出通道”,然后在上下文菜单中单击“停止代码运行”。

答案 1 :(得分:0)

在VSCode中,因为程序仍在执行,所以VSCode的默认执行终端“ <FlatList data={["aa","vv","aaz","zz","sv","qq","ee",]} keyExtractor={(item) => item.id} numColumns={7} style={{width:600}} contentContainerStyle={{width:100}} renderItem={({item}) => ( <View style={{backgroundColor:"green",marginHorizontal:4,width:50,alignItems:"center"}}> <Text style={styles.dayWeek}>{item}</Text> </View> )} /> <FlatList data={["1","2","3","4","5","6","9","12","13","11","22","43","41","2","3","1","2","3",]} keyExtractor={(item) => item.id} numColumns={7} renderItem={({item}) => ( <View style={{backgroundColor:"red",marginHorizontal:4,marginVertical:3,width:50,alignItems:"center"}}> <Text >{item}</Text> </View> )} /> ”已被占用。该代码将在该终端中一一运行,但不支持同步操作,以免在执行过程中造成混乱。

以下是一种解决方法,可帮助您执行其他脚本:

请在VSCode中单击“ Python”,选择“ Terminal”,然后手动输入执行命令,例如:“ New Terminal

这样,我们可以在终端(另一个终端)上执行其他程序,而不会引起混乱和拥挤。

答案 2 :(得分:0)

这是vpython中的一个错误,我做了一个issue。它不仅特定于VSCode Terminal,而且还会影响使用cmd或Powershell启动的vpython脚本。

请注意,它实际上不会冻结终端为无穷大。在我的测试中,该程序有时需要约1分钟,有时甚至需要10分钟才能返回到命令行。

解决方法

a。启动另一个终端/ cmd / powershell 标签或窗口并使用它。

b。 关闭浏览器的所有标签。终止浏览器进程将立即返回。

c。耐心地等待,直到程序返回。 (1-10分钟)

或者,克隆vpython repo并自己找到并修复错误;-)