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

yipeiwu_com6年前Python基础

在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 阶乘累加和的实例

阶乘:也是数学里的一种术语;阶乘指从1乘以2乘以3乘以4一直乘到所要求的数;在表达阶乘时,就使用“!”来表示。如h阶乘,就表示为h!;阶乘一般很难计算,因为积都很大。 提问:求1+2!+...

python3 assert 断言的使用详解 (区别于python2)

python3 和python以前的版本有点不同 如果你断言的 语句正确 则什么反应都没有 但是如果你出错之后 就会报出 AssertionError 并且错误可以自己填写 格式 :...

Python查找第n个子串的技巧分享

Problem Python中str类自带的find、index方法可以返回第一个匹配的子串的位置,但是如果实际使用中需要查找第2个甚至第n个子串的位置该怎么办呢。也许有的码友可能会用到...

numpy数组做图片拼接的实现(concatenate、vstack、hstack)

两种方法拼接 #img = np.vstack((img, img2)) # vstack按垂直方向,hstack按水平方向 img = np.concatenate((img,...

Python调用adb命令实现对多台设备同时进行reboot的方法

首先,adb实现对设备的reboot命令是:adb reboot . 但是如果是两台/多台设备的时候,需要声明serial number: adb -s serial_no reboot...