python学习-ipython和pyenv

一、ipython

ipython是一个python的交互式shell,比默认的python shell好用得多,支持变量自动补全,自动缩进,支持bash shell命令,内置了许多很有用的功能和函数。学习ipython将会让我们以一种更高的效率来使用python。同时它也是利用Python进行科学计算和交互可视化的一个最佳的平台。

Python的主要功能如下:

1.运行ipython控制台

2.使用ipython作为系统shell

3.使用历史输入(history)

4.Tab补全

5.使用%run命令运行脚本

6.使用%timeit命令快速测量时间

7.使用%pdb命令快速debug

8.使用pylab进行交互计算

9.使用IPython Notebook

安装ipython

ipython支持Python2.7版本或者3.3以上的版本,我用的是windows下的python 3.4版本。

安装ipython很简单,可以直接使用pip管理工具即可:

pip install ipython

这条命令会自动安装IPython以及它的各种依赖包

使用ipython

IPython支持所有python的标准输入输出,也就是我们在IDLE中或者Python shell中能用的,在IPython中都能够使用,唯一的不同之处使ipython会使用In [x]和Out [x]表示输入输出,并表示出相应的序号。

其实后面我们会知道,In和Out是两个保存历史信息的变量

直接输入ipython则可进入

TAB自动补全

在shell中输入表达式时,只要按下Tab键,当前命名空间中任何与输入的字符串相匹配的变量(对象或者函数等)就会被找出来:

内省

在变量的前面或者后面加上一个问号?,就可以将有关该对象的一些通用信息显示出来,这就叫做对象的内省

如果对象是一个函数或者实例方法,则它的docstring也会被显示出来:

定义方法如下:

这时查看该方法的内省信息:

如果使用两个问号??,那么还可以显示出该方法的源代码:

可以使用通配符字符串查找出所有与该通配符字符串相匹配的名称,比如我们查找re模块下所有的包含find的函数:

查看历史命令history

在IPython shell中,使用历史命令可以简单地使用上下翻页键即可,另外我们也可以使用hist命令(或者history命令)查看所有的历史输入

如果在hist命令之后加上-n,即hist -n也可以显示出输入的序号:

使用%run命令运行脚本

在ipython会话环境中,所有文件都可以通过%run命令当做Python程序来运行,输入%run 路径+python文件名称即可

在IPython中使用系统shell

我们可以在IPython中直接使用系统shell,并获取读取结果作为一个Python字符串列表。为了实现这种功能,我们需要使用感叹号!作为shell命令的前缀。比如现在在我的windows系统中,直接在IPython中ping百度:

自动补全

使用tab键进行自动补全

快捷键

  1. Ctrl-P    或上箭头键 后向搜索命令历史中以当前输入的文本开头的命令
  2. Ctrl-N   或下箭头键 前向搜索命令历史中以当前输入的文本开头的命令
  3. Ctrl-R   按行读取的反向历史搜索(部分匹配)
  4. Ctrl-Shift-v   从剪贴板粘贴文本
  5. Ctrl-C   中止当前正在执行的代码
  6. Ctrl-A   将光标移动到行首
  7. Ctrl-E   将光标移动到行尾
  8. Ctrl-K   删除从光标开始至行尾的文本
  9. Ctrl-U   清除当前行的所有文本译注12
  10. Ctrl-F   将光标向前移动一个字符
  11. Ctrl-b   将光标向后移动一个字符
  12. Ctrl-L   清屏

二、pyenv

系统自带的Python是2.x,自己需要Python 3.x,此时需要在系统中安装多个Python,但又不能影响系统自带的Python,即需要实现Python的多版本共存,pyenv就是这样一个Python版本管理器。

安装依赖包

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel -y

下载安装pyenv

git clone https://github.com/pyenv/pyenv.git ~/.pyenv

设置环境变量

echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

source ~/.bash_profile#即是启动语句,重启系统执行这条语句exec $SHELL

查看支持的版本,同时检测pyenv是否安装成功

pyenv install --list

查看当前pyenv可检测到的所有版本,处于激活状态的版本前以 * 标示.

pyenv versions

设置面向程序的本地版本,通过将版本号写入当前目录下的.python-version 文件的方式。

#在本地创建目录python36,执行pyenv local 3.6.3后,只有在这个目录是python 3.6.3的版本,别的目录使用默认的版本.

mkdir python3
cd python3
python local 3.6.3
python local --unset #取消本地目录环境配置

安装需要的python版本,如3.6.3

pyenv install 3.4.0 -v
#小技巧,可以在/root/.pyenv/目录下创建cache目录,将下载好的Python-3.4.0的包放在该目录下,就可以直接执行安装,而不需要下载,节省下载时间.

安装完成后,更新数据库生效

pyenv rehash

设置全局python版本

python -global 3.6.3

卸载python 3.6,3

原文地址:http://blog.51cto.com/11555417/2153382

时间: 2024-08-01 15:01:09

python学习-ipython和pyenv的相关文章

python学习之pyenv

我们经常有这种需求: linux系统中既要有python2.xxx,又要有python3.xxx,甚至更极端的情况是,有多个版本的python3.xxx. 如何实现上述需求呢?更新python的话,费事又容易将文件搞丢失,还只能使用一个版本的python. 于是,pyenv工具就出现了! 通过pyenv工具可以在系统上多个版本的python,而当你需要使用其中一个版本的时候,切换也非常容易! 安装: yum install readline readline-devel readline-sta

python学习之pyenv环境搭建

1.安装git,github地址为https://github.com/pyenv/pyenv-installer/ yum install git -y 2.安装python编译依赖环境 yum -y install gcc make patch gdbm-devel openssl-devel sqlite-devel readline-devel zlib-devel bzip2-devel 3.创建python用户用于搭建pyenv专用于python多版本管理环境 useradd pyt

你所会用到的Python学习环境及工具

备注:所以使用的操作系统环境为CentOS 6.2 编译安装python 2.7及ipython 1.下载所需要的程序包 ipython-1.2.1.tar.gz Python-2.7.6.tar.xz # 请从官网下载指定的程序包. 2.使用yum安装readline程序包 ~ ]# yum -y install readline-devel 如果不安装这个程序包,有可能导致python交互界面无法使用删除键"Backspace" 3.安装gcc包,为编译python做准备 ~ ]#

python学习笔记12-模块使用

python学习笔记12-模块使用 模块os,sys 什么是模块? 模块os,sys 模块是Python组织代码的一种基本方式 一个Python脚本可以单独运行,也可以导入到另外一个脚本运行,用import hello语句来导入,不用加入.py 什么是Python的 包? Python的模块可以按照目录组织为包 创建一个包的步骤: 创建一个名字为包名的目录 在改目录下创建一个__init__.py文件 根据需要,在该目录下存放脚本文件或已编译的扩展及子包 import pack.m1,pack.

Python学习-环境搭建

一.环境说明: 1.Centos 7下安装Python3X及版本管理工具pyenv 二.环境搭建: 1.安装Python 依赖的库: gcc make patch gdbm-devel openssl-devel sqlite-develzlib-devel bzip2-devel readline-devel 2.安装版本管理工具pyenv(参考github): curl -L https://raw.githubusercontent.com/yyuu/pyenv-installer/mas

python学习笔记2—python文件类型、变量、数值、字符串、元组、列表、字典

python学习笔记2--python文件类型.变量.数值.字符串.元组.列表.字典 一.Python文件类型 1.源代码 python源代码文件以.py为扩展名,由pyton程序解释,不需要编译 [[email protected] day01]# vim 1.py #!/usr/bin/python        print 'hello world!' [[email protected] day01]# python 1.py hello world! 2.字节代码 Python源码文件

[Docker]在Python和IPython中使用Docker

现在Docker是地球上最炙手可热的项目之一,就意味着人民实际上不仅仅是因为这个才喜欢它. 话虽如此,我非常喜欢使用容器,服务发现以及所有被创造出的新趣的点子和领域来切换工作作为范例. 这个文章中我会简要介绍使用python中的docker-py模块来操作Docker 容器,这里会使用我喜爱的编程工具IPython. 安装docker-py 首先需要docker-py.注意这里的案例中我将会使用Ubuntu Trusty 14.04版本. $ pip install docker-py IPyh

Python学习之使用Python操作Redis数据库

最近在写一个检查一台服务器上所有游戏区服配置文件中redis某个key值大小的脚本,本打算使用shell+awk+sed的方式去解决这个问题,但是由于redis的配置信息是php数组形式.shell脚本一时没有写出来,就请教他人帮忙写了个python脚本,但是自己python不是很精通,于是按照脚本中涉及到的python知识现学现用,然后根据自己的需求更改脚本.这里分享一下如何使用python操作redis数据库. Redis的Python驱动源码下载地址是https://github.com/

Python多版本管理软件pyenv的安装应用及pip的使用讲解

近期Comyn老师的Python视频推出之后,大家一直在讨论者pyenv这个软件的应用问题,简单写一篇基本用法,给大家做下简单介绍: 目录: 一.pyenv介绍 二.centos6.4上安装配置pyenv 三.使用pyenv安装python 四.pyenv的基本应用 五.pip安装与配置 六.使用pip安装python相关软件 一.pyenv介绍 项目地址:https://github.com/yyuu/pyenv 关于pyenv的介绍: 一般在操作系统中我们会安装多个Python版本,在*ni