python常用面试题(1)语言特性

1.谈谈对 Python 和其他语言的区别
python是一种语法简洁优美、功能强大、应用领域广泛、具有强大的第三方库的,弱类型的可移植,可扩展、可嵌入的解释型编程语言。

2.简述解释型和编译型编程语言
解释型不需要编译,每运行一次就要解释器翻译成机器语言,效率低,而编译型语言是首次编译成机器语言,执行速度快

3.Python 的解释器种类以及相关特点?
Cpython:C语言编写,使用最广的解释器
IPython:基于Cpython基础上增加一个交互计时器,交互方式增强,功能和Cpython功能一样
PyPy:目标是执行效率,采用JIT技术对python代码进行编译,提高执行效率
Jpython:运行在java的解释器,直接将代码编译成java字节码
Ironpython:运行在微软 .NET 平台上的解释器,把python编译成. NET 的字节码

4.说说你知道的Python3 和 Python2 之间的区别?

  • python2和python3中的print用法不同
  • 编码方式不同,python2是采用ASCCI编码、python3采用unicode
  • 除法/不一致,python2中中整数相除结果会把小数部分忽略,浮点数相除会保留小数点得到一个浮点数,python3中整数相除也会保留小数点得到一个浮点数
  • python2整数型有long和int,python3只有int
  • python2中range而python3中的xrange速度更快是一个生成器

5.Python3 和 Python2 中 int 和 long 区别?

  • int(整型)在32位机器上,整数的位数是32位,取值范围是-231231-1,即-2147483648214748364;在64位系统上,整数的位数为64位,取值范围为-263263-1,即92233720368547758089223372036854775807。
  • long Python长整型没有指定位宽,但是由于机器内存有限,使用长的长整数数值也不可能无限大。

6.xrange 和 range 的区别?
range直接生成一个list,耗费时间、空间。xrange是生成一个生成器,做循环时效率比较高

上一篇:第1章:Python语言与Linux系统管理


下一篇:不使用Anaconda下python2和python共存