• python基础面试题


    面试题

    面试题---python面试题

    阅读目录

    一、 【第一部分】

    1.为什么学习python

    2.通过什么途径学习python

    3.公司上线和开发环境

    4.python和其它语言对比

    5.简述编译型和解释型语言

    6.Python解释器的种类和特点

    二、【第二部分】

    1. and和or

    2.ASCII、Unicode、utf-8、gbk区别

    3. 三元运算编写格式

    4. python2和python3 的区别

    5. py2项目如何迁移成py3

    6. python2和python3 的区别

    7. py2项目如何迁移成py3

    8. python2和python3中int和long的区别

    9. xrange和range的区别

    第一部分

    为什么学习python

    1. 开发效率高,python有非常强大的第三方库
    2. 入门容易,python的定位是“优雅、明确、简单”
    3. 应用广泛,python广泛应用在爬虫、人工智能、网页应用、后台管理等领域
    4. 可移植性,由于python是开源,python可以移植到不同放入操作平台
    5. 可扩展性,由于python是C语言写的,可以用C或C++编写部分代码,可以使得关键代码运行的更快以及不公开某些算法
    6. 课嵌入式,可以把python程序嵌入到C或者C++中,从而提供脚本功能

    通过什么途径学习python

    1. 看视频
    2. 看网站:博客园、python学习大本营、CSDN、掘金
    3. 看书:《python基础教程》《python入门到精通》

    公司上线和开发环境

    开发环境:Ubuntu系统

    python与其它语言对比

    Java企业应用使用
    C操作系统、开发语言、游戏引擎
    C++游戏
    Python爬虫、人工智能、全栈、网页应用、后台管理、大数据搜索引擎
    C#微软公司的,在处理内存上优秀,应用在Xbox、游戏机
    Visual Basic大学课本、快绝迹
    PHP开发动态网页效率及其高,太简单
    JavaScript语法类似python,但及其严格、灵活
    SQl 
     国内很少,日本很火,类似python、PHP的脚本语言
    Object-cios苹果

    简述编译型和解释型语言

    • 编译型:

      • 优点:编译器一般会有预编译的过程对代码进行优化。因为编译只做一次,运行时不需要编译,所以编译型语言的程序执行效率高。可以脱离语言环境独立运行
      • 缺点:编译之后如果需要修改就需要整个模块重新编译。编译的时候根据对应的运行环境生成机器码,不同得操作系统之间移植就会有问题,需要根据不同的操作系统环境编译不同的可执行文件。
    • 解释型:

      • 优点:有良好的平台兼容性,在任何环境都可以运行,前提是安装了解释器(虚拟机),灵活,修改代码的时候直接修改就可以,可以快速部署,不用停机维护。
      • 缺点:每次运行的时候都要解释一遍,性能上不如编译型语言。
    • 总结:简单来讲编译型如果代码太大,每次修改太麻烦,效率低但运行快--->问题出在编译时间太长

      解释型语言:运行效率太低,解释一行代码跑一行,但调试方便

    Python解释器的种类和特点

    解释器特点
    Cpython官网支持,内部是C语言写成的
    Ipython与Cpython内核一样
    JpythonJpython试运行在Java平台上的Python解释器,可以直接把Python代码编译成Java字节码。
    IronPythonIronPython和JPython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码
    PyPy一次性的把代码解释成字节码问价,可以直接运行

    位和字节

    1 Byte = 8 Bits

    1 KB = 1024 Bytes

    1 MB = 1024 KB

    列举PEP8规范(知道五个)

    1. 缩进:每一级缩进4个空格

    2. 行的最大长度:所有行限制最大字符数为79.

    3. 空行:

      1. 顶层函数和类的定义,前后用两个空行隔开,
      2. 类里面的方法定义用一个空行隔开。
    4. import

      1. 导入在最文件顶部

      2. 导入应该按照以下顺序分组:

        1. 标准库带入(如os、re)
        2. 相关第三方库导入(需要pip安装)
        3. 本地应用/库特定导入(自己写的)

    你应该在每组导入之前加入空行

    3. 导入多个时用from django.shortcuts import render, HttpResponse, redirect

    1. 注释

      1. 函数注释(三个双引号)
      2. 单行注释
    2. 命名方式

      1. 类名一般使用首字母大写
      2. 函数名应该小写,如果想提高可读性可以用下划线分隔
      3. 模块命名小写
      4. 函数与函数之间,类与类之间空两行

    第二部分

    and和or

    • and:两边同时为真取后面,两边同时为假取前面,一真一假取假

    • or:两边同时为假取前面,两边同时为假取后面,一真一假取真

    • 优先级not > and > or

      求结果:

      v1=1 or 3 #结果为1
      v2=1 and 3 #结果为3
      v3=0 and 2 and 1 #结果为0
      v4=0 and 2 or 1 #结果为1
      v5=0 and 2 or 1 or 4 #结果为1
      v6=0 or False and 1 #结果为False
      

    ASCII、Unicode、utf-8、gbk区别

    ASCII:

    最早的编码,至今还在使用。8位一个字节(字符)

    GBK:

    国标码,16位2个字节

    英文一个字节(字符),8位

    中文一个字符,两个字节,16位

    Unicode:

    英文:一个字符4个字节 32位

    中文:一个字符4个字节 32位

    utf-8:

    英文:1个字节 8位

    欧洲:2个字节 16位

    亚洲:3个字节 24位

    三元运算编写格式

    a if a > b else b当a>b成立返回a,否则返回b

    python2和python3 的区别

    编码区别:

    py2:ASCII

    py3:utf8

    继承区别:

    py2:经典类、新式类

    py3:新式类

    输出print区别:

    py2:print ''

    py3:print()

    输出:

    py2:v1=raw_input()

    py3:input()

    范围:

    py2:range/xrange (range:会立即建立数据。xrange:使用一个创建一个)

    py3:range(相当于xrange,若创建数据,list(range())),l会立即创建数据

    除法区别:

    py2: /是整除

    py3: /是常规除法,//是整除

    py2项目如何迁移成py3

    python自带的工具2to3,他就在script目录下。使用方法不妨参考官方文档。使用方法其实就这一行执行即可

    C:WINDOWSsystem32> cd C:ProgramDataAnaconda3Scripts
    C:ProgramDataAnaconda3Scripts>  .2to3.exe -w  E:xxxxxx.py
    

    python2和python3中int和long的区别

    python2中有long类型

    python3中有只有int类型,没有long类型

    xrange和range的区别

    py2:range/xrange (range:会立即建立数据。xrange:使用一个创建一个)

    py3:range(相当于xrange,若创建数据,list(range())),l会立即创建数据

  • 相关阅读:
    php根据时间显示刚刚,几分钟前,几小时前的实现代码
    PHP中获取当前页面的完整URL
    PhpExcel中文帮助手册|PhpExcel使用方法
    洛谷P1781 宇宙总统【排序+字符串】
    洛谷P1579 哥德巴赫猜想(升级版)【水题+素数】
    洛谷P1478 陶陶摘苹果(升级版)【水题】
    洛谷P1002 过河卒【dp】
    51Nod
    排序算法总结(C++)
    UVA1339
  • 原文地址:https://www.cnblogs.com/g15009428458/p/12243119.html
Copyright © 2020-2023  润新知