在atom中运行python脚本时获取用户输入

时间:2015-03-15 09:30:37

标签: python input atom-editor

我不确定我是不是在寻找合适的地方或是否尚未实现此功能,但在安装原子脚本包并在需要用户输入的程序上测试后,我意识到从shell运行程序时,我无法以input()的方式键入任何内容。我偶然发现了this thread,这让我怀疑这个功能还没有添加,但我只是想确定一下。这不是一个非常基本的事情吗?或者我是否必须坚持使用atom纯粹作为文本编辑器并从CLI运行文件?

2 个答案:

答案 0 :(得分:2)

某些文本编辑器(包括Atom和Sublime)不喜欢用户输入(raw_input())。是的,您必须从CLI运行该文件。

然而,你可以通过使用其他文本编辑器来解决这个问题,例如Notepad ++(请参阅此答案在notepad ++中运行Python - How to Execute a Python File in Notepad ++?),用户输入正常工作。

如果您希望切换到Sublime(用户输入也有问题),请参阅此答案 - Sublime Text 2 console input

如果您想坚持Atom,当然,另一种选择是在调试/开发时对raw_input中要查找的变量进行硬编码(但不要忘记在调试后切换回raw_input )。

答案 1 :(得分:1)

安装atom-shell-commands
查看链接页面中的在新窗口中运行示例 像这样编辑配置文件:

"atom-shell-commands":
    commands: [
      {
        name: "run with python 3"
        command: "cmd"
        arguments: [
          "/C"
          "start"
          "$your_folder$/launch_python3.cmd"
          "{FileName}"
        ]
        options:
          cwd: "{FileDir}"
          keymap: 'ctrl-3'
      }
    ]

注意:我将 launch_python3.cmd 保存在我的用户文件夹/.atom中,但您可以将其保存在其他位置,这应该不是问题。

cmd文件内容:

@echo off  
REM used by atom-shell-commands to launch python 3 in a new window

$your_python_path$\python.exe %1  
pause  
exit 

现在,您将发现使用python 3'在包>下Atom Shell命令
根据需要编辑名称和键盘快捷键 单击菜单,将显示一个新的命令提示符窗口:它还支持用户输入 为我工作。