linux终端python自动提示

很多时候,在linux下编写python时,

都懒得去vi一个新文件,直接就新开一个终端,

进入python命令行模式,然后就可以写一些测试代码。

不过最悲剧的就是,刚开始使用的时候,每个字母都要自己写,

不能像linux普通终端那样用tab来自动完成。

于是,在网上搜索了一番,终于还是被我找到了,特此记录一下。

首先,在宿主目录~下,

新建一个.pythonstartup.py文件(linux debian类的系统用“.”号开始表示隐藏文件),然后在该文件写入以下代码:

#!/usr/bin/python
# -*- coding: UTF-8 -*- import readline, rlcompleter;
readline.parse_and_bind("tab: complete"); # 启用Tab补全 def igtk():
globals()['gtk'] = __import__('gtk');
globals()['thread'] = __import__('thread');
gtk.gdk.threads_init();
thread.start_new_thread(gtk.main, ());
pass;

保存之后,我们需要将该文件添加到环境变量中,这里采用修改~/.bashrc文件来添加环境变量。

用vi打开~/.bashrc文件,在文件末尾添加如下代码:

 export PYTHONSTARTUP=~/.pythonstartup.py ok,

现在终端上进入python命令模式后,就可以用tab来自动完成了,效果如下:

linux终端python自动提示的更多相关文章

  1. Linux VIM python 自动补全插件:pydiction

    Pydiction 可以是我们使用Tab键自动补全Python代码在Vim,是一款非常不错的插件. Pydiction不需要安装,所有没有任何依赖包问题,Pydiction主要包含三个文件. pyth ...

  2. Linux中Python自动输入sudo 密码

    一.背景和需求 背景: 由于docker服务进程都是以root帐号的身份运行的,所以用docker跑abpred出来的文件所有者都是root, 而我作为一般用户,操作这个文件不够权限,运行代码时需要s ...

  3. Linux 命令未自动提示补全

    解决方法: yum install -y bash-completion 退出当前界面,重新进入即可.

  4. 切换Python环境 linux终端命令行

    切换Python环境 conda info -e // 查看有什么环境 source activate env //切换环境 linux终端分屏 terminator  https://www.jia ...

  5. Linux升级Python提示Tkinter模块找不到解决

    一.安装tkinter 在Linux中python默认是不安装Tkinter模块, [root@li250- ~]# python Python (r266:, Feb , ::) [GCC (Red ...

  6. python代码在linux终端中执行报错:Unable to init server: Could not connect: Connection refused

    python代码在linux终端中执行时报错: Unable to init server: Could not connect: Connection refused Unable to init ...

  7. linux终端terminal个性化配置(转)

    http://blog.csdn.net/pipisorry/article/details/39584489 {本文介绍Linux终端字体颜色设置.终端提示符显示内容设置.自定义alias命令} l ...

  8. Linux终端回话记录和回放工具 - asciinema使用总结

    目前linux终端回放工具常见的就是asciinema和script了, 这两种工具都有那种类似于视频回放的效果.虽然这样做的代价是录制过程中需要占用一定的cpu资源以及录制后可能会因为视频文件太大而 ...

  9. Linux终端打印命令使用介绍

    常用linux打印命令 日常使用中或shell脚本中linux终端打印命令有echo和printf.  echo命令 功能说明:显示文字.语 法:echo [-ne][字符串]或 echo [--he ...

随机推荐

  1. 如何克隆kvm虚拟机

    关于如何使用kvm虚拟化技术创建虚拟机,这里有一系列博客讲的已经非常清楚了,这里不再赘述,不过其中有些小坑可能需要大家注意: 0. 写在创建虚拟机之前(即教程的系列三之前) 1. 确认防火墙是否关闭, ...

  2. 代码演示用 KnockoutJS 和 Web API 对一个表格(Gird)进行 CRUD 操作,在 MVC 5 下

    实体类: using System; using System.Collections.Generic; public partial class EmployeeInfo { public int ...

  3. ASP.NET Web API 的简单示例

    Demo1: HTML: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> ...

  4. 浅析.NET泛型

    泛型是.NET Framework 2.0最强大的功能,通过泛型可以定义类型安全的数据结构,而没有必要使用实际的数据类型,这将显著提高性能并得到更高质量的代码.在.NET Framework 2.0之 ...

  5. 【转载】Linux下动态共享库加载时的搜索路径详解

    转载自:http://www.eefocus.com/article/09-04/71617s.html 对动态库的实际应用还不太熟悉的读者可能曾经遇到过类似“error while loading ...

  6. Android学习笔记之蓝牙通信...

    PS:最近同学问我蓝牙的事,因此自己也就脑补了一下蓝牙... 学习内容: 1.如何实现蓝牙通信技术...   蓝牙通信其实是手机里很常用的一种通信方式,现在的手机中是必然存在蓝牙的,蓝牙通信也是有一部 ...

  7. UNIQUEIDENTIFIER列上的统计信息

    UNIQUEIDENTIFIER列上的统计信息非常有意思,在它上面有一些很令人讨厌的行为.我们来看下. 问题重现(The repro) 为了向你展示我们刚抱怨的行为,我用下列简单的表定义创建了一个数据 ...

  8. Django--上传文件

    需求 Django中forms表单上传文件处理​ 速查 views.py 1 2 3 4 5 6 7 8 9 def upload(request):     if request.method==' ...

  9. [Latex]实现行内高亮

    Latex的行内高亮 前两天想要在做的小操作系统实验指导书里使用行内高亮,一开始虽然有命令 \mint{Language}|contents| 但是无奈只能实现跳行高亮,即不能实现行内高亮.即代码高亮 ...

  10. 点餐APP 冲刺二总结

       冲刺二我们小组主要是实现数据库的增删改查等功能, 因为小组成员对数据库都不是很熟悉,所以花了比较多 的时间去学习,功能实现起来也是很艰难,所以第二个 冲刺结束后我们的数据库还是有点问题,不能成功 ...