python简介及安装配置
概述
python是解释型语言,相对编译型语言,执行效率较低。python是通过c语言编写,官方解释器也是c语言编写cpython,也有其他的如用java编写的jpython。目前有2.0和3.0版本。
python优缺点
优点:简单易学;开源免费;高级语言;可移植;面向对象;可扩展;丰富的库;规范的代码。
缺点:解释型语言的执行效率慢。
安装配置
1.在mac OS下
大多数OS X系统都默认安装了Python。确定安装了Python后,你还需安装一个文本编辑器, 并确保其配置正确无误。
在文件夹Applications/Utilities中,选择Terminal,打开一个终端窗口;你也可以按Command + 空格键,再输入terminal 并按回车。为确定是否安装了Python,请执行命令python输出将类似于下面这样,它指出了安装的Python版本; 最后的>>> 是一个提示符, 让你能够输入Python命令。
$ python
Python 2.7.10 (default, Oct 6 2017, 22:29:07)
[GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
如果要退出Python并返回到终端窗口,可按Ctrl + D或执行命令exit()
要检查系统是否安装了Python 3,可尝试执行命令python3 。 可能会出现一条错误消息, 但如果输出指出系统安装了Python 3,则无需安装就可使用它。如果在你的系统中能够执行命令python3,则对于所有命令都替换为python3
你可以打开一个终端窗口并执行命令python 或python3,再尝试运行Python代码片段。 在终端会话中输入如下代码行:
>>> print("Hello Python !")
Hello Python !
>>>
消息将直接打印到当前终端窗口中。
Sublime Text是一款简单的文本编辑器:它在OS X中易于安装;让你能够直接运行几乎所有程序( 而无需通过终端),非常好用;使用不同的颜色来显示代码,以突出代码语法;在内嵌在Sublime Text窗口内的终端会话中运行代码, 让你能够轻松地查看输出。
要下载可访问http://sublimetext.com/3,单击Download链接,并查找OS X安装。但要完全免费使用需要注册码来破解。
在终端执行如下命令:
$ type -a python
python is /usr/bin/python
现在,启动Sublime Text,并选择菜单Tools ▶ Build System▶ New Build System,这将打开一个新的配置文件。删除其中的所有内容, 再输入如下内容:
{
"cmd": ["/usr/bin/python", "-u", "$file"],
}
将这个配置文件命名为Python.sublime-build(方便辨认),并将其保存到默认目录。
启动Sublime Text,选择菜单File ▶ Save As, 将当前的空Python文件保存到指定文件夹,并命名为hello_world.py。扩展名.py告诉Sublime Text,文件包含的是Python程序;
保存文件后, 在其中输入下面一行代码:
print("Hello world!")
如果在系统中能够运行命令python,就可选择菜单Tools ▶ Build或按Ctrl + B来运行程序。 如果你对Sublime Text进行了配置, 使其使用的命令不是python , 请选择菜单Tools ▶Build System,再选择Python。这将把Python设置为默认使用的Python版本; 此后你就可选择菜单Tools ▶ Build或按Command+ B来运行程序了。
Sublime Text窗口底部将出现一个终端屏幕, 其中包含如下输出:
Hello world!
[Finished in 0.1s]
访问http://python.org/downloads/,下载所需要的版本,并且安装。并且最好配置环境变量最为方便,打开右键我的电脑▶属性▶高级设置▶环境变量设置▶系统环境变量▶找到path▶后面加上;C:\python(分号与前面相隔,路径为python安装路径)
设置完成之后可运行cmd在窗口输入python查看是否安装(如果没有可重启电脑试试)。至于Sublime Text的相关操作也和上述一样,路径记得修改。配置sublime text的python编译系统文件修改如下: {
"cmd": ["D:/Python/python.exe","-u","$file"],
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)",
"selector": "source.python",
"encoding": "cp936"
}
linux系统下,大多数已经默认安装了python2。下面讲一下python3的编译安装。
1)下载并解压
首先在python官网下载python3的源码包https://www.python.org/downloads/source/,选择相应的版本下载即可。此处下载的是Python-3.6.6.tgz。然后解压。
tar -zxvf Python-3.6.6.tgz -C /usr/local/ --no-same-owner
2)安装依赖环境以及gcc编译
python安装之前需要一些必要的模块,python的一些功能依赖着这些模块,比如openssl支持ssl相关的功能,没有readline则python交互式界面删除键和方向键都无法正常使用。
yum install gcc gcc-c++
yum -y install zlib zlib-devel
yum -y install bzip2 bzip2-devel
yum -y install ncurses ncurses-devel
yum -y install readline readline-devel
yum -y install openssl openssl-devel
yum -y install openssl-static
yum -y install xz lzma xz-devel
yum -y install sqlite sqlite-devel
yum -y install gdbm gdbm-devel
yum -y install tk tk-devel
3)编译安装
--enable-shared和-fPIC之后可以将python3的动态链接库编译出来,默认情况编译完lib下面只有python3.xm.a这样的文件,python本身可以正常使用,但是如果编译第三方库需要python接口的比如caffe等。
./configure --prefix=/usr/local/Python-3.6.6/ --enable-shared CFLAGS=-fPIC
make && make install
4)添加软链接即可
ln -s /usr/local/Python-3.6.6/bin/python3 /usr/bin/python3
ln -s /usr/local/Python-3.6.6/bin/pip3 /usr/bin/pip3
注意:当出现错误如下
python3: error while loading shared libraries: libpython3.6m.so.1.0: cannot open shared object file: No such file or directory
centos系统默认加载/usr/lib,/lib下面库文件,python默认安装到非此类文件夹。不过可以通过添加库配置信息
步骤如下:
#cd /etc/ld.so.conf.d
#touch python3.conf
#cat python3.conf #添加库文件路径
/usr/local/Python-3.6.6/lib
#ldconfig #运行生效
补充:
python解释器命令行无法使用删除键和方向键的问题:
首先试了一下下面的方法:
1.安装realine包
yum install -y readline-devel
2.将python重新编译安装一次
cd /usr/local/Python-3.6.4/
./configure --prefix=/usr/local/python3/
make && make install
发现并没有效果,,然后使用另一种方法:
pip install readline
就行了。。(python3.X会导致崩溃。。)
python简介及安装配置的更多相关文章
- twemproxy 简介、安装配置
twemproxy 简介.安装配置 http://www.xuchanggang.cn/archives/993.html
- 【Python①】python简介,安装以及配置
今天开始学习python,将一些心得和知识点记录下来,如有疏漏或表达问题,欢迎指正.后面所有代码均为Python 3.3.2版本(运行环境:Windows7)编写. 附:2014年8月TIOBE编程语 ...
- PYTHON简介及安装
Python简介 Python是一种广泛使用的高层次,通用,解释,动态编程语言.它的设计理念强调代码的可读性,它的语法允许程序员表达更少的代码的概念比将在可能语言如C ++或Java.该语言提供旨在使 ...
- elasticsearch系列一:elasticsearch(ES简介、安装&配置、集成Ikanalyzer)
一.ES简介 1. ES是什么? Elasticsearch 是一个开源的搜索引擎,建立在全文搜索引擎库 Apache Lucene 基础之上 用 Java 编写的,它的内部使用 Lucene 做索引 ...
- elasticsearch系列一elasticsearch(ES简介、安装&配置、集成Ikanalyzer)
一.ES简介 1. ES是什么? Elasticsearch 是一个开源的搜索引擎,建立在全文搜索引擎库 Apache Lucene 基础之上 用 Java 编写的,它的内部使用 Lucene 做索引 ...
- python简介与安装
Python简介和环境搭建 于 20世纪80年代末,Guido van Rossum发明了Python,初衷据说是为了打发圣诞节的无趣.1991年首次发布,是ABC语言的继承,同时也是一种脚本语言.取 ...
- python学习之路-1 python简介及安装方法
python简介 一种面向对象.解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. 目前最新版本为3.5.1,发布于2015年12月07日 ...
- Maven01——简介、安装配置、入门程序、项目构建和依赖管理
1 Maven的简介 1.1 什么是maven 是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的 Svn eclipse maven量级 1.2 Maven好处 同 ...
- MongoDB入门学习笔记之简介与安装配置
一.MongoDB简介 1.文档数据库 MongoDB是一款开源的文档型非关系数据库,具有高性能.高可靠性和自动扩展等特点.MongoDB中的每一条记录是一个文档,其数据存储结构为键/值对,类似JSO ...
随机推荐
- OAuth2.0的refresh token
最近看人人网的OAuth认证,发现他是OAuth2.0,之前一直看的是新浪的OAuth,是OAuth1.0. 二者还是有很多不同的,主要的不同点在access token的获取方式. OAuth1.0 ...
- 【读书笔记】iOS-nonatomic
原子性atomicity(nonatomic),是关系线程安全的,但是会影响性能.如果确定不考虑线程安全问题可以使用nonatomic. 参考资料:<iPhone与iPad开发实战-iOS经典应 ...
- Kotlin入门(16)容器的遍历方式
Kotlin号称全面兼容Java,于是乎Java的容器类仍可在Kotlin中正常使用,包括大家熟悉的队列ArrayList.映射HashMap等等.不过Kotlin作为一门全新的语言,肯定还是要有自己 ...
- JdbcTemplate学习笔记(更新插入删除等)
1.使用JdbcTemplate的execute()方法执行SQL语句 jdbcTemplate.execute("CREATE TABLE USER (user_id integer, n ...
- SQL去除空格、截取数据的方法:trim、substring
1.如device表中的identity字段正常的字段长度是32位,但是某些不正常的数据,后面多出空格,需要去掉后面的空格,可执行以下命令: ; ; 2.使用substring函数截取某字段的的其中一 ...
- 【 PostgreSQL】查询某模式下所有表的分布键信息
想看下某模式下所有表创建的分布键是否合理,查找系统表文档拼出如下sql,亲们如果有更好的sql或者意见欢迎留言! SELECT aaa.nspname AS "模式名", ...
- sql server 转置 和实现随机分配和一串代码的含义拼在一行
1.sql server 转置很容易搜到方法,一般需要手动写转置的列项,如果多时会比较烦,下面试了省事的方法: --案例需求数据 ----方法一:if object_id('tempdb.dbo.#s ...
- [HDFS_add_3] HDFS 机架感知
0. 说明 HDFS 副本存放策略 && 配置机架感知 1. HDFS 的副本存放策略 HDFS 的副本存放策略是将一个副本存放在本地机架节点上,另外两个副本放在不同机架的不同节点上 ...
- Hacker News API
Hacker News API中的URI和版本 API都由https://hacker-news.firebaseio.com提供. 单个条目信息 故事,评论,招聘,问答,以及投票都叫做条目.它们有各 ...
- PHP 截取字符串乱码的解决方案
今天遇到一个坑,左右调试坑的我一脸懵逼,当我们对一条字符串进行截取的时候,通常第一个想到的就是substr()函数了,但是如果是中文+数字的字符串的话,这时候使用substr进行截取就会出现乱码的问题 ...