一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数。

若用的是fish shell,建议使用virtualfish替代 virtualenvwrapper:  https://github.com/adambrenecki/virtualfish,注意,如果使用 vf new -p /usr/bin/python3.5 env35 创建出错,可以使用 sudo pip install setuptools --no-use-wheel --upgrade 解决问题; 如果你想这virtualfish的virtualenv 下使用 ipython, 建议直接这虚拟环境下执行:pip install ipython (这样该虚拟环境下就可以直接运行 ipython), 尽量不要在shell环境下用 sudo 执行: sudo apt-get install ipython (这样的后果可能导致虚拟环境下ipython执行不成功)。

Python的dist-packages目录和site-packages目录的区别:

0、site-packages里面放的是第三方包。

1、sudo apt-get install 安装的package存放在 /usr/lib/python2.7/dist-packages目录中。

2、pip 或者 easy_install安装的package存放在/usr/local/lib/python2.7/dist-packages目录中。

3、手动从源代码安装的package存放在site-packages目录中。

Ubuntu下安装pip的方法:

$ sudo apt-get install python-pip python-dev build-essential
$ sudo pip install --upgrade pip
$ sudo pip install --upgrade virtualenv

virtualenv 和 virtualenvwrapper:virtualenv、fabric 和 pip 是 pythoneer 的三大神器

virtualfish的安装很简单:

  1. pip install virtualfish
  2. Edit ~/.config/fish/config.fish, adding a line that reads eval (python -m virtualfish)
注意 eval (python -m virtualfish) 必须添加到文件的最后,因为它依赖PATH,若你自己设定过 PATH,就必须添加在你自己设定的语句后面
virtualfish的使用:
  • vf new [<options>] <envname> - Create a virtualenv. Note that <envname> must be last.
  • vf ls - List the available virtualenvs.
  • vf activate <envname> - Activate a virtualenv. (Note: Doesn't use the activate.fish script provided by virtualenv.)
  • vf deactivate - Deactivate the current virtualenv.
  • vf rm <envname> - Delete a virtualenv.
  • vf tmp [<options>] - Create a temporary virtualenv with a randomly generated name that will be removed when it is deactivated.
  • vf cd - Change directory to currently-activated virtualenv.
  • vf cdpackages - Change directory to the currently-activated virtualenv's site-packages.
  • vf addpath - Add a directory to this virtualenv's sys.path.
  • vf all <command> - Run a command in all virtualenvs sequentially.
  • vf connect - Connect the current working directory with the currently active virtualenv. This requires the :ref:`auto-activation plugin <auto_activation>` to be enabled in order to have any effect besides creating a :file:`.venv` file in the current directory.

Using Different Pythons

By default, the environments you create with virtualenv (and, by extension, virtualfish) use the same Python version that virtualenv was installed under, which will usually be whatever your default system Python is.


If you want to use something different in a particular virtualenv, just pass in the --python PYTHON_EXE (-p for brevity) argument to vf new, where PYTHON_EXE is any Python executable, for example:

vf new -p python3 my_python3_env
vf new -p /usr/bin/pypy my_pypy_env

ipython, 一个 python 的交互式 shell,比默认的python shell 好用得多,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数的更多相关文章

  1. IDEA 代码自动补全/自动联想 功能

    IDEA 的代码补全/自动联想功能,可以仅仅输入几个字母,自动补全一整段代码,非常舒服. 代码自动联想功能在 设置 -> Editor -> Live Templates 查看,很多都非常 ...

  2. TCL函数“参数自动补全” 与 “help 信息显示”

    tcl 函数参数自动补全和 help 信息显示 在EDA tool 中使用命令时,命令的参数可以通过 tab 键自动补全,而且可以使用 -help 显示帮助信息,使用起来很方便: 那么我们自己编写的 ...

  3. shell自动补全功能:bash和zsh

    首要一点:shell有多种,比如bash.zsh.csh.ksh.sh.tcsh等 因此,制作自动补全功能时,要先搞清楚,你使用的是哪种shell,各个shell制作方法是不同的,网上大部分介绍的是关 ...

  4. 第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索的自动补全功能

    第三百六十八节,Python分布式爬虫打造搜索引擎Scrapy精讲—用Django实现搜索的自动补全功能 elasticsearch(搜索引擎)提供了自动补全接口 官方说明:https://www.e ...

  5. Python3设置在shell脚本中自动补全功能的方法

    本篇博客将会简短的介绍,如何在ubuntu中设置python自动补全功能. 需求:由于python中的内建函数较多,我们在百纳乘时,可能记不清函数的名字,同时自动补全功能,加快了我们开发的效率. 方法 ...

  6. 四十七 Python分布式爬虫打造搜索引擎Scrapy精讲—elasticsearch(搜索引擎)用Django实现搜索的自动补全功能

    elasticsearch(搜索引擎)提供了自动补全接口 官方说明:https://www.elastic.co/guide/en/elasticsearch/reference/current/se ...

  7. Shell脚本中实现自动补全功能

    对于Linuxer来说,自动补全是再熟悉不过的一个功能了.当你在命令行敲下部分的命令时,肯定会本能地按下Tab键补全完整的命令,当然除了命令补全之外,还有文件名补全. Bash-completion ...

  8. [转载]启用 VIM 中的 Python 自动补全及提示功能

    转载: http://zhongwei-leg.iteye.com/blog/941474 周围的同事不喜欢使用 VIM 写 Python 代码的原因之一就是,VIM 不能像 Visual Studi ...

  9. Visual Studio Code 中实现 C++ 函数定义跳转和代码自动补全功能(25)

    方法1: 1.1 安装插件 C++ Intellisense 名称: C++ Intellisense id: austin.code-gnu-global 说明: C/C++ Intellisens ...

随机推荐

  1. NDK(9)Application.mk各属性介绍

    本文参考 : http://blog.csdn.net/grimraider/article/details/7587816 在NDK中编写的是本地程序,这个程序的源码在 jni 下,这个本地项目的配 ...

  2. 详解javascript中的call, apply

    一些学js的同学一看到call, apply, 就蒙了, 感觉不好懂, 看的头大. 今天我们就一起来研究一下这2个东东.彻底弄清楚它们的用法. 定义: call, apply是函数的方法, 只有函数才 ...

  3. rsync常用命令及格式

    rsync在同步文件夹内容这个工作上应用非常广泛,但是rsync本身命令还是比较复杂,本文总结一下: rsync = remote sync的简称 ,它 被用于在linux/unix系统中执行备份操作 ...

  4. laravel重要概念和知识点

    Service Provider: 一个laravel service provider就是一个注册IoC container binding的类.实际上,laravel本身就自包含了一堆管理核心框架 ...

  5. UVa 575 Skew Binary 歪斜二进制

    呵呵,这个翻译还是很直白的嘛,大家意会就好. 第一次看到这个高大上题目还是有点小害怕的,还好题没有做过深的文章. 只要按照规则转化成十进制就好了,而且题目本身也说了最大不超过一个int的范围(2^31 ...

  6. 51nod1202 子序列个数

    看到a[i]<=100000觉得应该从这个方面搞.如果a[x]没出现过,f[x]=f[x-1]*2;否则f[x]=f[x-1]*2-f[pos[a[x]]-1];ans=f[n]-1,然后WA了 ...

  7. hdu 1429 胜利大逃亡(续) (bfs+状态压缩)

    又开始刷题了 题意:略过. 分析:主要是确定状态量,除了坐标(x,y)之外,还有一个key状态,就好比手上拿着一串钥匙.状态可以用位运算来表示:key&(x,y)表示判断有没有这扇门的钥匙,k ...

  8. WM8962 HPOUT 信号强度 时间周期

    /*************************************************************************** * WM8962 HPOUT 信号强度 时间周 ...

  9. 快速查询Python脚本语法

    /********************************************************************* * 快速查询Python脚本语法 * 说明: * Char ...

  10. 【英语】Bingo口语笔记(73) - 以tly,tely结尾的误读