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


Posted in Python onJanuary 14, 2015

一、定制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工具的补充,因为它知道怎样处理包建立。

Python 相关文章推荐
浅要分析Python程序与C程序的结合使用
Apr 07 Python
Python 比较两个数组的元素的异同方法
Aug 17 Python
对pandas中apply函数的用法详解
Apr 10 Python
flask入门之文件上传与邮件发送示例
Jul 18 Python
对Pandas MultiIndex(多重索引)详解
Nov 16 Python
Python 2/3下处理cjk编码的zip文件的方法
Apr 26 Python
20行python代码的入门级小游戏的详解
May 05 Python
Python内置random模块生成随机数的方法
May 31 Python
Python Matplotlib 基于networkx画关系网络图
Jul 10 Python
Python列表如何更新值
May 27 Python
python判断是空的实例分享
Jul 06 Python
Python descriptor(描述符)的实现
Nov 15 Python
Python的迭代器和生成器使用实例
Jan 14 #Python
python实现带验证码网站的自动登陆实现代码
Jan 12 #Python
Python三元运算实现方法
Jan 12 #Python
Python中的True,False条件判断实例分析
Jan 12 #Python
Python基类函数的重载与调用实例分析
Jan 12 #Python
Python类的专用方法实例分析
Jan 09 #Python
Python序列之list和tuple常用方法以及注意事项
Jan 09 #Python
You might like
深入了解php4(1)--回到未来
2006/10/09 PHP
在PHP中检查PHP文件是否有语法错误的方法
2009/12/23 PHP
php开发环境配置记录
2011/01/14 PHP
smarty模板引擎中自定义函数的方法
2015/01/22 PHP
JQuery 前台切换网站的样式实现
2009/06/22 Javascript
JavaScript高级程序设计 扩展--关于动态原型
2010/11/09 Javascript
jQuery Mobile 导航栏代码
2013/11/01 Javascript
js+css实现tab菜单切换效果的方法
2015/01/20 Javascript
jQuery简单实现日历的方法
2015/05/04 Javascript
跟我学习javascript的call(),apply(),bind()与回调
2015/11/16 Javascript
JavaScript获取IP获取的是IPV6 如何校验
2016/06/12 Javascript
GOJS+VUE实现流程图效果
2018/12/01 Javascript
如何在项目中使用log4.js的方法步骤
2019/07/16 Javascript
VUE 解决mode为history页面为空白的问题
2019/11/01 Javascript
浅谈JavaScript中this的指向更改
2020/07/28 Javascript
ant design pro中可控的筛选和排序实例
2020/11/17 Javascript
[54:45]2018DOTA2亚洲邀请赛 4.1 小组赛 A组 Optic vs OG
2018/04/02 DOTA
Python3中的真除和Floor除法用法分析
2016/03/16 Python
python爬虫_自动获取seebug的poc实例
2017/08/05 Python
python使用Tesseract库识别验证
2018/03/21 Python
Python读取properties配置文件操作示例
2018/03/29 Python
python滑块验证码的破解实现
2019/11/10 Python
用HTML5制作数字时钟的教程
2015/05/11 HTML / CSS
Superdry极度乾燥官网:日本街头风格,纯英国制造品牌
2016/10/31 全球购物
英国蜡烛、蜡烛配件和家居香氛购买网站:Yankee Candle
2018/12/12 全球购物
新西兰最大、占有率最高的综合性药房:PharmacyDirect药房中文网
2020/11/03 全球购物
接受捐赠答谢词
2014/01/27 职场文书
教师开学感言
2014/02/14 职场文书
公司门卫岗位职责
2014/03/15 职场文书
租房协议书范本
2014/04/09 职场文书
心理健康活动总结
2014/04/30 职场文书
工商局领导班子存在的问题整改措施思想汇报
2014/10/05 职场文书
体育活动总结
2015/02/04 职场文书
大四学生个人总结
2015/02/15 职场文书
关于销售人员的年终工作总结要点
2019/08/15 职场文书
《LOL》“克隆大作战”久违归来 幻灵战队皮肤上线
2022/04/03 其他游戏