当前在Visual Studio Code中运行Windows 10,python版本3.8.5。
每次我尝试使用vpython执行任何程序时,该程序都能正常工作,但会永久锁定我的集成终端,因此无法再使用它。它仍然显示以前运行的旧文本,但不接受任何新程序执行或不允许在终端中键入任何内容。我尝试过的所有其他程序都工作正常,但是任何使用vpython的程序都会冻结它。相同的vpython程序在IDLE中也可以正常工作。我已确保未选中“在兼容模式下运行此程序”。
from vpython import *
ball = sphere(pos=vector(-5, 0, 0), radius=0.5, color=color.cyan)
答案 0 :(得分:0)
我很确定之前曾经遇到过这个问题,您已经编写了一些可以继续运行的代码,从而阻止了vs代码再次运行它。它没有冻结,只是持续运行您的代码。 您可以使用以下方法之一停止执行代码。
- 使用快捷键Ctrl + Alt + M。
- 按F1,然后选择/键入Stop Code Run。
- 右键单击“输出通道”,然后在上下文菜单中单击“停止代码运行”。
答案 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并自己找到并修复错误;-)