草庐IT

shell-mode

全部标签

python - 我应该如何指示我的 Python shell 脚本返回错误?

我正在用Python编写一个shell脚本(#!/usr/bin/envpython)。总的来说,我对shell脚本编写有点陌生,如果我误解了什么,请见谅。我目前的理解是,如果我的shell脚本成功运行,我应该调用sys.exit()来表明它已成功(即返回0)。如果我遇到错误(具体而言,用户传入了我不期望的参数),我应该返回什么以及如何返回?用任何非零值调用sys.exit()是否可以,例如sys.exit(1)? 最佳答案 大多数Shell实用程序都有不同的返回值,具体取决于发生的错误。标准是退出时状态码为0,表示执行成功。对于其

python 交互式 shell 比命令行快 16 倍——怎么了?

我在一个小函数上使用EnthoughtEPD-Free7.3-1,当我剪切/粘贴到交互式session(PyLab)并运行它时,它只需要不到一秒钟的时间。当我从命令行“pythonprobtest.py”运行相同的代码时,它需要超过16秒。我已经确认两者都使用相同的python环境。可能相关(可能不相关)但是在.py文件的目录中,没有.pyc文件......我最近做的python脚本都没有有关联的.pyc文件。我检查了该文件夹的读/写权限,使用了“修复权限”(MacOSX-Lion),并卸载/重新安装了EPD_Freepython,但没有成功。我不知道可能是什么原因。我正在使用的代码(

php - 从脚本语言中调用 shell 命令会降低性能吗?

编写python、perl、ruby或php时我会经常使用...PERL:`[SHELLCOMMANDHERE]`system("[SHELL]","[COMMAND]","[HERE]")Pythonimportosos.system("[SHELLCOMMANDHERE]")fromsubprocessimportcallcall("[SHELL]","[COMMAND]","[HERE]")ruby`[SHELLCOMMANDHERE]`system("[SHELLCOMMANDHERE]")PHPshell_exec("SHELLCOMMANDHERE")在shell中生成子进

python - 在启动 python shell 时自动执行命令

我想知道是否有一种方法可以在进入pythonshell时自动运行命令,就像使用bash的.bash_profile或.profile脚本一样。我想自动导入一些模块,这样我就不必每次进入shell时都输入整个shebang。谢谢, 最佳答案 是的,您可以使用PYTHONSTARTUP环境变量来执行此操作,如here所述 关于python-在启动pythonshell时自动执行命令,我们在StackOverflow上找到一个类似的问题: https://stack

python - 如何使用 "less"禁用 Python shell 生成 "help"

标题说明了一切。我更喜欢Python的shell在显示帮助时使用cat而不是less以便帮助的内容与shellsession的其余部分内联。 最佳答案 这似乎也有效:>>>importpydoc>>>pydoc.pager=pydoc.plainpager即使您已经调用了帮助命令,这仍然有效,因为它替换了pydoc.py中的缓存版本。 关于python-如何使用"less"禁用Pythonshell生成"help",我们在StackOverflow上找到一个类似的问题:

Windows 上的 Python 2.6 : how to terminate subprocess. Popen 带有 "shell=True"参数?

有没有一种方法可以终止使用subprocess.Popen类启动且“shell”参数设置为“True”的进程?在下面的最小工作示例(使用wxPython)中,您可以愉快地打开和终止记事本进程,但是如果您将Popen“shell”参数更改为“True”,则记事本进程不会终止。importwximportthreadingimportsubprocessclassMainWindow(wx.Frame):def__init__(self,parent,id,title):wx.Frame.__init__(self,parent,id,title)self.main_panel=wx.Pa

python - IPython 4 shell 不适用于 Sublime REPL

我在从SublimeREPL包运行IPythonshell时遇到问题。这是我得到的:C:\Anaconda\lib\site-packages\IPython\config.py:13:ShimWarning:The`IPython.config`packagehasbeendeprecated.Youshouldimportfromtraitlets.configinstead."Youshouldimportfromtraitlets.configinstead.",ShimWarning)C:\Anaconda\lib\site-packages\IPython\terminal

Python/Django shell 无法启动

Django的一大特色是您可以打开一个python解释器设置以用于您的项目。这可用于分析数据库中的对象,并允许在您的项目上执行任何python命令。我发现它对Django开发至关重要。使用此命令在项目目录中调用它:$pythonmanage.pyshell我刚刚开始开发一个新项目,但出于某种原因,shell无法正常工作。我在网上查看了错误,但没有找到任何东西。对于此错误的任何帮助,我将不胜感激:Traceback(mostrecentcalllast):File"manage.py",line11,inexecute_manager(settings)File"/Library/Pyt

python - 从 python 运行 shell 脚本

我正在尝试使用以下命令从python脚本运行shell脚本:fromsubprocessimportcallcall(['bashrun.sh'])这给了我一个错误,但我可以成功运行其他命令,例如:call(['ls']) 最佳答案 你应该分开参数:call(['bash','run.sh'])call(['ls','-l']) 关于python-从python运行shell脚本,我们在StackOverflow上找到一个类似的问题: https://stac

python - 在 emacs python shell 中重新加载更改的 python 文件

在emacsPythonshell(我正在运行2.*Python)中,我正在导入一个我正在使用的.py文件并测试代码。但是,如果我更改代码,我不确定如何再次导入它。从我目前的阅读看来reload(modulename)应该可以,但似乎不行。也许只是关闭pythonshell并重新启动它就足够了,是否有相应的命令,或者您只是手动执行?编辑:看起来python-send-defun和python-send-buffer是理想的,但更改似乎没有传播。 最佳答案 虽然reload()确实有效,但它不会更改对类、函数和其他对象的引用,因此很容