当前位置 博文首页 > 更改Python命令行交互提示符的方法

    更改Python命令行交互提示符的方法

    作者:admin 时间:2021-07-20 17:46

    一、定制Python的交互提示符

    Python的默认交互提示符为“>>>”,但它是可以定制的。

    Python启动后,先寻找PYTHONSTARTUP环境变量,然后执行此文件中变量指定的执行代码。

    一些Linux发布包提供了缺省的启动脚本,一般存放在其home目录,名为.pythonstartup。“Tab完成”和“命令历史”这两个功能增强了提示符应用,两者都基于readline模块。

    如果没有.pythonstartup文件,可以自己创建一个。

    简单例子:

    复制代码 代码如下:

    # python startup file
    import readline
    import rlcompleter
    import atexit
    import os
    # tab completion
    readline.parse_and_bind('tab: complete')
    # history file
    histfile = os.path.join(os.environ['HOME'], '.pythonhistory')
    try:
     readline.read_history_file(histfile)
    except IOError:
     pass
    atexit.register(readline.write_history_file, histfile)
    del os, histfile, readline, rlcompleter

    可以在http://pypi.python.org/pypi/pbp.scripts另存为.pythonstartup。

    设置PYTHONSTARTUP环境变量

    如果是在Linux或Mac OS X下运行Python,最简单的方法是创建启动脚本,并保存到home目录。
    然后用PYTHONSTARTUP环境变量连接它,设置到系统启动脚本。例如在Bash和Korn shell,可使用.profile文件,你可以插入行,例如:
    export PYTHONSTARTUP=~/.pythonstartup
    在windows下,更为方便,设置PYTHONSTARTUP黄金变量即可。

    二、iPython

    iPython见:http://ipython.scipy.org
    iPython的目标是为交互应用和研究计算创建一个全面的环境。iPython有两个主要组件:

    1)一个增强的Python交互shell
    2)交互式并行计算架构

    iPython开源,当前版本:0.9.1。它是一个Python的增强shell。特征:

      -动态的对象检查
      -从提示符访问系统shell
      -Profiling的直接支持
      -调试方便

    三、Python的distutils

    Python自带了一套工具distutils,用于发布Python应用程序。它提供了:

    1、一个骨架
    提供标准元数据域,如作者名、License类型等等。

    2、一套帮助器
    明白怎样建立发布包。

    distutils没有提供定义其它依赖包的功能,setuptools工具增强了这一点。

    setuptools 框架,它是 Python Enterprise Application Kit(PEAK)的一个副项目。 setuptools 替换了标准的 distutils 库,并为 Python 添加了版本化的包和依赖性管理。

    Perl 用户比较熟悉 CPAN,而 Ruby 用户则比较熟悉 Gems;引导 setuptools 的 ez_setup 工具和随之而生的扩展后的 easy_install 与 “Cheeseshop”(Python Package Index,也称为 “PyPI”)一起工作来实现相同的功能。另外,setuptools 还让我们可以将自己的库包装成一个称为 “egg” 的包,它与 Java? 的 JAR 文件类似,不过是用于 Python 的。

    要安装setuptools,使用EasyInstall。
    EasyInstall是一个包下载器和安装器。EasyInstall是setuptools工具的补充,因为它知道怎样处理包建立。

    jsjbwy
    下一篇:没有了