武Sir博客拿的面试题,答案都是自己写的,多有不足,请多多指教。更新中。。。。。。

1.为什么学习Python?
  a.写起来快,看起来明白。作为通用性的语言,除了一些对性能要求很高的场合,几乎什么都能干,常见领域:web服务器、计算科学、程序脚本、系统管理

2.通过什么途径学Python?
  看各种教学视频,看博客。

3.Python和Java、PHP、C、C#、C++等其他语言的对比?
  Python是一门面向对象的解释性语言,Python通过缩进来确定作用域,Python代码简洁易读。 Python拥有很多功能强大的模块可供使用。但是Python相比较于其他语言,运行效率低,不适合对运行效率要求搞的程序。

4.简述解释型和编译型编程语言?
  计算机不能直接的理解高级语言,只能直接理解机器语言,所以必须要把高级语言翻译成机器语言,计算机才能执行高级语言的编写的程序。翻译的方式有两种,一个是编译,一个是解释。两种方式只是翻译的时间不同。
  解释性语言的程序不需要编译,解释性语言在程序运行的时候才需要翻译,可移植性好,只需要有解释环境,可在不同平台运行。缺点就是必须要有解释环境才能运行,需要占用更多的资源,代码效率低,解释器本身也需要占用资源,程序严重依赖于平台。
  编译型就是直接把程序编译成机器可以执行的文件,编译和执行是分开的,但不能跨平台,编译型语言的程序执行效率高,编译后程序不可修改,保密性好。缺点代码需要经过编译方可运行,可移植性差,只能在兼容的操作系统上运行。

5.Python解释器种类以及特点?
  CPython
  使用C语言开发,使用最广泛的解释器。
  IPython
  基于CPython上的一个交互式解释器,IPython在交互方式上有所增强,但执行Python代码的功能和CPython是完全一样。
  PyPy
  PyPy采用JIT技术,对Python代码进行动态编译,可以显著提高Python代码的执行速度。
  JPython
  Jython是运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码执行。
  IronPython
  IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

6.位和字节的关系?
  8位(bit) = 1字节(Byte)

7.b、B、KB、MB、GB 的关系?
  1024b(Byet) = 1KB
  1024KB(Byet) = 1MB
  1024MB(Byet) = 1GB
  1024GB(Byet) = 1TB

  8.请至少列举5个 PEP8 规范(越多越好)
    a.不要在行尾加分好,也不要用分号将两条命令放在同一行。
    b.每行不超过80个字符(长的导入模块语句和注释里的URL除外)
    c.不要使用反斜杠连接行。Python会将圆括号,中括号和花括号中的行隐式连接。
    d.用四个空格来缩进代码,不要用tab,也不要tab和空格混用。对于行连接的情况,你应该要么垂直对齐换行的元素,或者使用四空格的悬挂式缩进。
    e.顶级定义之间空两行,方法定义之间空一行。如函数或者类的定义空两行,方法定义与第一个方法之间,空一行。
    f.不要在冒号,逗号,分号前面加空格,但应该在他们后面加。

  9.通过代码实现如下转换:(未写)
    二进制转换成十进制:v = “0b1111011”

    十进制转换成二进制:v = 18

    八进制转换成十进制:v = “011”

    十进制转换成八进制:v = 30

    十六进制转换成十进制:v = “0x12”

    十进制转换成十六进制:v = 87

  10.请编写一个函数实现将IP地址转换成一个整数。(未写)
    如 10.3.9.12 转换规则为:
    10 00001010
    
3 00000011

    9 00001001

      12 00001100

    再将以上二进制拼接起来计算十进制结果:00001010 00000011 00001001 00001100 = ?

  11.python递归的最大层数?
    Python解释器为了避免内存一出和性能影响设置了最大递归深度为998,当调用栈超过998层就会报错。

  12.求结果:
    v1 = 1 or 3
 --------------->v1 = 1
    v2 = 1 and 3
 -------------->v2 = 3
    v3 = 0 and 2 and 1 -------->v3 = 0

      v4 = 0 and 2 or 1 --------->v4 = 1

     v5 = 0 and 2 or 1 or 4 ---->v5 = 1

      v6 = 0 or False and 1 ----->v6 = False

  13.ascii、unicode、utf-8、gbk 区别?

ascii:
  在计算机内部,所有信息最终都是一个二进制。每一个二进制位(bit),有0和1两种状态,因此,8个二进制位可以组合出256种状态,这被称为字节。上个世纪六十年代,美国定制了一套字符编码,对英文字符与二进制之间做了联系,这个被称为ASCII

网上搜集python面试题(更新中......)的更多相关文章

  1. Python设计模式 - 总览(更新中...)

    最近打算重构部分python项目,有道是"工欲善其事,必先利其器",所以有必要梳理一下相关设计模式.每次回顾基本概念或底层实现时都会有一些新的收获,希望这次也不例外. 本系列打算先 ...

  2. Python奇技淫巧 - 持续更新中....

    Python奇技淫巧 人生苦短,我用Python: 编程界这绝对不是一句空话,尤其是对于使用过多个语言进行工作的同学们来说,用Python的时间越长,越有一种我早干嘛去了的想法,没事,啥时候用Pyth ...

  3. python总结(更新中)

    1 python函数中的参数传递(注意可变和不可变传递) 可更改(mutable)与不可更改(immutable)对象 在 python 中,strings, tuples, 和 numbers 是不 ...

  4. Python面试题及答案汇总整理(2019版)

    发现网上很多Python面试题都没有答案,所以博主花了很长时间搜集整理了这套Python面试题及答案,由于网上的Python相关面试题大多数都是2019年的,所以我这个也是2019版的,哈哈~ (文末 ...

  5. Python面试题整理-更新中

    几个链接: 编程零基础应当如何开始学习 Python ? - 路人甲的回答 网易云课堂上有哪些值得推荐的 Python 教程? - 路人甲的回答 怎么用最短时间高效而踏实地学习 Python? - 路 ...

  6. 2020企业python真面试题持续更新中

    目录 1.软件的生命周期 2.如何知道一个python对象的类型 3.简述Django的设计模式MVC,以及你对各层的理解和用途 4.什么是lambda函数,说明其使用场景 5.python是否支持函 ...

  7. 史上最全的spark面试题——持续更新中

    史上最全的spark面试题——持续更新中 2018年09月09日 16:34:10 为了九亿少女的期待 阅读数 13696更多 分类专栏: Spark 面试题   版权声明:本文为博主原创文章,遵循C ...

  8. Android开发面试经——4.常见Android进阶笔试题(更新中...)

      Android开发(29)  版权声明:本文为寻梦-finddreams原创文章,请关注:http://blog.csdn.net/finddreams 关注finddreams博客:http:/ ...

  9. Python之路【第二十篇】:待更新中.....

    Python之路[第二十篇]:待更新中.....

随机推荐

  1. (转)Windows10下的docker安装与入门 (一)使用docker toolbox安装docker

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机制,相互之间不会有任何 ...

  2. Ubuntu 18.04 下 Redis 环境搭建

    一.安装 Redis ① 下载 wget http://download.redis.io/releases/redis-3.2.8.tar.gz ② 解压 tar -zxvf redis-3.2.8 ...

  3. Java 自增原理

    很多人都知道 i++ 和 ++i 的区别 a = i++: a = i; i = i+1; a = ++ i; i = i + 1; a = i; 但碰到 i = i ++;的时候很多人就懵了? i是 ...

  4. 如何安全的捂住你的AngelToken钱包

    Angel Token钱包的重要性 AngelToken基于区块链底层技术的去中心化.安全可靠的特点,开发了数字资产钱包,是行业领先的中心化token钱包和去中心化交易平台相结合的链数字资产智能钱包. ...

  5. 装B命令行,常用Windows命令

    winver检查Windows版本 dxdiag检查DirectX信息 gpedit.msc 组策略   regedit.exe 注册表 Msconfig.exe 系统配置实用程序  lusrmgr. ...

  6. Mysql 了解changeBuffer 与 purge 调优

    需要删除.新增记录或更新一个数据页时,如果数据页在内存中就直接更新,而如果这个数据页还没有在内存中的话,在不影响数据一致性的前提下,InooDB 会将这些更新操作缓存在 change buffer中, ...

  7. Windows操作系统下搭建Git服务器和客户端。

    本文将介绍如何在Windows操作系统下搭建Git服务器和客户端.服务器端采用的是Bonobo Git Server,一款用ASP.NET MVC开发的Git源代码管理工具,界面简洁,基于Web方式配 ...

  8. centos7 无界面静默安装 oracle

    环境准备 Centos7.3.64  64位   这里使用的是阿里云 ECS主机(1核,2G内存,40G硬盘) Oracle 11g R2 64位安装介质(版本11.2.0.1)下载地址:http:/ ...

  9. UIMediaScanner从相册读取资源的功能

    iPhone的照片上传到了iCloud,本地的照片就被压缩,每当你要查看这些照片的时候就需要下载,不然上传的图片就是缩略图. //图片多张选择 function select_album(max, c ...

  10. 没有与这些操作数匹配的 "<<" 运算符 操作数类型为: std::ostream << std::string

    错误显示:没有与这些操作数匹配的 "<<" 运算符       操作数类型为:  std::ostream << std::string 错误改正:要在头文 ...