1.python
Python是一种跨平台语言,同样的python程序可以在windows和UNIX系统上运行,python是解释型语言,它不需要编译或构建。python有一个非常强大的标准库,利用该标准库就可以实现许多的功能,同时,python还有许多第三方库。
python虽然本质上是一种面向对象语言,但是可用于面向过程程序设计、面向对象程序设计、函数型程序设计.
2.Python的安装
目前Python有两个版本,python2和Python3.最新消息是2020年Python2将不再提供支持。
如果在windows环境下,在官网https://www.python.org/downloads下载对应电脑版本,然后点击安装即可.
如果是Linux环境下,可以通过软件包来安装:
sudo apt-get install python3.5
对于ubuntu16.04系统,默认安装了Python3。
3.Hello World
python文件的扩展名为.py,有些UNIX系统上没有扩展名,Python GUI的扩展名为.pyw.python程序有多简单呢?只需要新建一个hello.py,然后写如下代码:
print("Hello world")
这就是python的hello world.#表示注释,下面看运行方式。
第一种运行方式:
如果在Windows下运行,打开DOS,进入到文件位置,然后输入如下命令:
python.exe hello.py
如果提示“python.exe不是内部或外部命令,也不是可运行的程序或批处理文件”,则说明没有配置环境变量,配置环境变量时将安装目录添加到系统环境变量path目录中,如我的安装路径:D:\ProgramFiles\Python\Pyton3;
运行程序如下:
Python是解释型程序,通常在控制窗口内进行。
如果在Linux下运行,则输入如下命令:
python3 hello.py
运行程序如下:
第二种运行方式:
上面这种运行方式有些繁琐,因此还有一种更为简单的运行方式,如果是在Windows下,直接输入hello.py就可以运行了:
如果是在Linux环境下,则必须先给程序可执行权限,然后运行该程序,但是在运行程序时,出现了点问题,结果如下:
可以看到,当赋予了可执行权限后,提示语法错误:syntax error near unexpected token `”Hello world”’.但是我们通过另一种方式运行没问题,因此语法没问题,所以造成这个原因是因为系统不知道怎么运行该程序,前面说了,Python是一种解释型语言,这里运行时不知道由哪个解释器来执行,因此出现这个问题。
要解决这个问题,需要在前面加上一行代码:
#!/usr/bin/python3
#或
#!/usr/bin/env python3
在UNIX类的系统中 ,当程序在终端被引用时,该文件的头两个字符先被读入,如果这两个字符是#!,则shell就会认为该文件由解释器执行,同时该字符后制定了要使用的解释器。该行称为shebang行。shebang行必须作为可执行文件的首行。如果采用第一种形式,就会使用指定的解释器;如果使用第二种形式,就会使用在shell当前环境下发现的第一个python3解释器。
因此,修改下程序就可以执行了:
#!/usr/bin/env python3
print("Hello world")
shellbang对于Windows来说,并非是必须的,但是从跨平台性考虑,应该也带有shebang。
4.Python开发工具
其实,使用记事本就可以写python程序,现在好多编辑器也支持python语法,进行高亮输出,如Windows中的NotPad++,Editplus,Linux的Vi,gedit等,但是还是不太方便,这里介绍两种开发集成环境。
4.1.IDLE的使用
对于初学者来说,每次新建.py文件,然后在终端调试是比较麻烦的 ,因此IDLE是一个很好的工具。IDLE是一款Python交互式解释器,利用它可以进行简短代码的调试、验证,这对于初学者来说很有帮助。
在Windows下,在安装Python的时候就安装了IDLE,可直接打开使用。在Linux下,IDLE存在于独立的安装包,因此需要独立安装:sudo apt-get install idle3.安装后,就可以在Python Shell中输入语句进行调试和验证了。IDLE界面如下,<<<表示输入提示符:
4.2.PythonCharm
PythonCharm是一款非常强大的用于Python 的IDE,并且支持Django(Python框架)。有两个版本,商业版和个人版,前者相比后者有更多的功能,但是不免费,安装也简单,在官网下载即可安装,地址:https://www.jetbrains.com/pycharm/download/