[英]Sublime Text doesn't execute all lines of Python code
使用未注册版本的Sublime Text(是问题)吗?
当我运行以下代码时,它会提示我输入我的名字,然后输入并单击Enter,然后什么都没有发生:
dict_1 = []
count = 0
while count < 3:
fn = input('What is your first name:')
ln = input('What is your last name:')
dict_1.append({
"first_name": fn,
"last_name": ln
})
count += 1
print(dict_1)
但是,当我在PyCharm中运行完全相同的代码时,它会根据循环提示输入名字和姓氏3次,然后打印出结果字典。
我更喜欢Sublime Text,而不是Pycharm(less肿的东西),但是如果它不能执行所有代码,那么它可能对我不起作用。
有任何想法吗? 我缺少的Sublime Text中是否有某些设置?
Sublime Text“构建结果”面板(界面底部):
是非交互式的,您不能在此处键入输入。
为了解决这个问题,除了标准的CTRL + B构建快捷方式之外,我还添加了另一个快捷方式(在“菜单首选项”>“按键绑定-用户”中 ):
{ "keys": ["ctrl+shift+alt+b"], "command": "python_run" }
这样就可以在新的终端窗口中使用Python启动当前文件(您可以输入一些数据)。
这是python_run.py
文件(要复制到C:\\Users\\User\\AppData\\Roaming\\Sublime Text 2\\Packages\\User
):
import sublime
import sublime_plugin
import subprocess
class PythonRunCommand(sublime_plugin.WindowCommand):
def run(self):
command = 'cmd /k "C:\Python27\python.exe" %s' % sublime.active_window().active_view().file_name()
subprocess.Popen(command)
正如其他人指出的那样,Sublime的控制台不支持输入。 如果要运行需要标准输入输入的程序。 您可以在GUI终端中运行它。 您可以为Python修改Sublime的内置构建系统 ,并为Python添加变体。
prv
,然后选择Open Resource
。 python
,然后在结果列表中选择第一项。 在打开的文件中,使用以下设置:
{
"shell_cmd": "python -u \"$file\"",
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"env": {"PYTHONIOENCODING": "utf-8"},
"variants":
[
{
"name": "Syntax Check",
"shell_cmd": "python -m py_compile \"${file}\"",
},
{
"name": "Run in console",
"windows":{
"shell_cmd": "start cmd /k python -u \"$file\""
},
"linux":{
"shell_cmd": "xterm -hold -e python -u \"$file\""
},
"osx":{
"shell_cmd": "xterm -hold -e python -u \"$file\""
}
}
]
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.