python控制台实现tab补全和清屏的例子


Posted in Python onAugust 20, 2019

在shell(bash)下有2个很基本的功能,那就是tab补全,和clear清屏,对于我这种时不时不自觉的就手残要clear清屏一下的人来说,python控制台不能清屏很不爽,经过google的帮忙,找到了解决办法。

执行“man python”可以看到这样一个环境变量:

PYTHONSTARTUP
  If this is the name of a readable file, the Python commands in that file are executed before the first prompt is displayed in interactive mode. The file is executed in the same name space where interactive commands are executed so that objects defined or imported in it can be used without qualification in the interactive session. You can also change the prompts sys.ps1 and sys.ps2 in this file.

在启动python解释器后,会执行环境变量 PYTHONSTARTUP 指向的文件(如果是一个可执行的python脚本的话),就像启动shell会执行~/.bashrc一样。可以写一个隐藏的脚本 .pythonstartup.py 放在自己的用户目录下,并配置PYTHONSTARTUP指向它:

~/.bashrc

  export PYTHONSTARTUP=~/.pythonstartup.py
~/.pythonstartup.py

  import readline, rlcompleter        
  readline.parse_and_bind("tab: complete")                                 
  import os, sys
  def cc() :
    os.system('clear')

这样配置之后,当进入python交互控制台的时候,就可以使用tab补全,并输入”cc()”清屏,在这里顺便import了os和sys,需要使用的时候就不用再import了.当然,还可以配置其他需要预先执行的命令或者语句。

以上这篇python控制台实现tab补全和清屏的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
跟老齐学Python之大话题小函数(2)
Oct 10 Python
python基于Tkinter库实现简单文本编辑器实例
May 05 Python
pandas数值计算与排序方法
Apr 12 Python
对python中类的继承与方法重写介绍
Jan 20 Python
总结python中pass的作用
Feb 27 Python
python3实现钉钉消息推送的方法示例
Mar 14 Python
Python print不能立即打印的解决方式
Feb 19 Python
django-csrf使用和禁用方式
Mar 13 Python
Python定义一个函数的方法
Jun 15 Python
Python模拟登录requests.Session应用详解
Nov 17 Python
python 如何对logging日志封装
Dec 02 Python
使用Python的开发框架Brownie部署以太坊智能合约
May 28 Python
关于python字符串方法分类详解
Aug 20 #Python
python+tkinter实现学生管理系统
Aug 20 #Python
Python对列表的操作知识点详解
Aug 20 #Python
python中的global关键字的使用方法
Aug 20 #Python
python并发编程 Process对象的其他属性方法join方法详解
Aug 20 #Python
浅谈pytorch grad_fn以及权重梯度不更新的问题
Aug 20 #Python
解决Pytorch 训练与测试时爆显存(out of memory)的问题
Aug 20 #Python
You might like
PHP把JPEG图片转换成Progressive JPEG的方法
2014/06/30 PHP
PHP 数组基本操作方法详解
2016/06/17 PHP
PHP实现登陆并抓取微信列表中最新一组微信消息的方法
2017/07/10 PHP
laravel批量生成假数据的方法
2019/10/09 PHP
php5与php7的区别点总结
2019/10/11 PHP
准确获得页面、窗口高度及宽度的JS
2006/11/26 Javascript
XML+XSL 与 HTML 两种方案的结合
2007/04/22 Javascript
基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
2011/05/07 Javascript
文件上传的几个示例分享【推荐】
2016/12/16 Javascript
详解在AngularJS的controller外部直接获取$scope
2017/06/02 Javascript
Bootstrap fileinput文件上传组件使用详解
2017/06/06 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
2017/07/10 jQuery
微信小程序支付之c#后台实现方法
2017/10/19 Javascript
vue定义全局变量和全局方法的方法示例
2018/08/01 Javascript
监听angularJs列表数据是否渲染完毕的方法示例
2018/11/07 Javascript
vue 实现滚动到底部翻页效果(pc端)
2019/07/31 Javascript
Layui table field初始化加载时进行隐藏的方法
2019/09/19 Javascript
three.js利用卷积法如何实现物体描边效果
2019/11/27 Javascript
node+multer实现图片上传的示例代码
2020/02/18 Javascript
[02:41]DOTA2英雄基础教程 谜团
2013/12/10 DOTA
Python简单实现自动删除目录下空文件夹的方法
2017/08/29 Python
python+tkinter编写电脑桌面放大镜程序实例代码
2018/01/16 Python
关于Python 的简单栅格图像边界提取方法
2019/07/05 Python
python实现两个一维列表合并成一个二维列表
2019/12/02 Python
Python通过zookeeper实现分布式服务代码解析
2020/07/22 Python
优乐美广告词
2014/03/14 职场文书
新文化运动的口号
2014/06/21 职场文书
四川省传达学习贯彻党的群众路线教育实践活动总结大会精神新闻稿
2014/10/26 职场文书
同意迁入证明模板
2014/10/26 职场文书
优秀教研组申报材料
2014/12/26 职场文书
2015年母亲节活动策划方案
2015/05/04 职场文书
2015社区个人工作总结范文
2015/05/13 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
爱国主义教育主题班会
2015/08/13 职场文书
SQL实现LeetCode(176.第二高薪水)
2021/08/04 MySQL
vue数据字典取键值项目的字典问题
2022/04/12 Vue.js