1、Python是门什么语言
简单从几个不同的维度来说,Python是一门解释型、动态类型、强类型定义语言。
1)编译型和解释型语言的区别:
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快。eg:C
解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的。eg:python
2)动态和静态语言的区别:
动态类型语言:动态类型语言是指在运行期间才去做数据类型检查的语言,也就是说,在用动态类型的语言编程时,永远也不用给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。Python和Ruby就是一种典型的动态类型语言,其他的各种脚本语言如VBScript也多少属于动态类型语言。
静态类型语言:静态类型语言与动态类型语言刚好相反,它的数据类型是在编译其间检查的,也就是说在写程序时要声明所有变量的数据类型,C/C++是静态类型语言的典型代表,其他的静态类型语言还有C#、JAVA等。
3)强类型定义和弱类型定义语言的区别:
强类型定义语言:强制数据类型定义的语言。也就是说,一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子:如果你定义了一个整型变量a,那么程序根本不可能将a当作字符串类型处理。强类型定义语言是类型安全的语言。
弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
2、Python的版本选择
目前,使用比较广泛的是python2.7.x和python3.5.x两种。python2.x目前可提供的模块较3.x版本的要多一些,但是之前官宣过python2.x在2020年就不再提供支持了,而python3.x并不向下兼容,因此建议在python3.x的版本上进行学习和开发。
3、第一个程序
对于python2,示例如下:
#!/usr/bin/env python #定义解释器的路径
# -*- coding:utf-8 -*- #定义使用的字符集,如果输入或者打印内容里含有中文,建议加上此行,以免python解释器解析出乱码
print "Hello,world!"
对于python3:
#!/usr/bin/env python
# -*- coding:utf-8 -*- #在python3.x中默认就支持中文字符集,所以这行写不写都行,不会影响脚本或程序的执行
print("Hello,world!") #在python3.x中print的用法为:print()