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多重继承新算法C3介绍
Sep 28 Python
用实例分析Python中method的参数传递过程
Apr 02 Python
python3.6连接MySQL和表的创建与删除实例代码
Dec 28 Python
python编程测试电脑开启最大线程数实例代码
Feb 09 Python
小白如何入门Python? 制作一个网站为例
Mar 06 Python
Python 数值区间处理_对interval 库的快速入门详解
Nov 16 Python
Python实现统计英文文章词频的方法分析
Jan 28 Python
python远程邮件控制电脑升级版
May 23 Python
Django Aggregation聚合使用方法解析
Aug 01 Python
Django框架ORM数据库操作实例详解
Nov 07 Python
Python线程障碍对象Barrier原理详解
Dec 02 Python
基于Python检测动态物体颜色过程解析
Dec 04 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数组转xml的代码分享
2015/05/14 PHP
Laravel框架中VerifyCsrfToken报错问题的解决
2017/08/30 PHP
TP5框架实现上传多张图片的方法分析
2020/03/29 PHP
Gambit vs ForZe BO3 第一场 2.13
2021/03/10 DOTA
使用js修改客户端注册表的方法
2013/08/09 Javascript
Jquery给基本控件的取值、赋值示例
2014/05/23 Javascript
jquery操作checkbox示例分享
2014/07/21 Javascript
js中的事件捕捉模型与冒泡模型实例分析
2015/01/10 Javascript
Angular中$compile源码分析
2016/01/28 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
Javascript 正则表达式校验数字的简单实例
2016/11/02 Javascript
JS填写银行卡号每隔4位数字加一个空格
2016/12/19 Javascript
JavaScript之class继承_动力节点Java学院整理
2017/07/03 Javascript
nodejs检测因特网是否断开的解决方案
2019/04/17 NodeJs
解决vue单页面应用进入页面加载所有 js 的问题
2020/08/12 Javascript
详解JavaScript 高阶函数
2020/09/14 Javascript
vue中父子组件的参数传递和应用示例
2021/01/04 Vue.js
[43:51]2014 DOTA2国际邀请赛中国区预选赛 Dream Times VS TongFu
2014/05/22 DOTA
[01:01:41]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Magma BO3 第二场 1月31日
2021/03/11 DOTA
Python设计模式之单例模式实例
2014/04/26 Python
python中global与nonlocal比较
2014/11/21 Python
学习python之编写简单乘法口诀表实现代码
2016/02/27 Python
python导入时小括号大作用
2017/01/10 Python
在Python中关于使用os模块遍历目录的实现方法
2019/01/03 Python
Python PyInstaller安装和使用教程详解
2020/01/08 Python
关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)
2020/10/27 Python
Html5页面在微信端的分享的实现方法
2018/08/30 HTML / CSS
实习生单位鉴定意见
2013/12/04 职场文书
人事部主管岗位职责
2013/12/26 职场文书
小区门卫管理制度
2014/01/29 职场文书
党员群众路线学习心得体会
2014/11/04 职场文书
项目经理岗位职责
2015/01/31 职场文书
2015年清明节活动总结
2015/02/09 职场文书
涨价通知怎么写
2015/04/23 职场文书
2019年大学生职业生涯规划书
2019/03/25 职场文书
使用jpa之动态插入与修改(重写save)
2021/11/23 Java/Android