• 企业python面试题


    1.列举常见的内置函数

    2.简述yield和yield from关键字

    3. 常用模块都有哪些?列举8个

    4.json序列化时,可以处理的数据类型有哪些?如何保持原字典的顺序?

    5.@classmethod,@staticmethod,@property含义及用法

    6.写一个可以给定出错重试次数的装饰器,用来处理HTTP超时等

    def get_response(url):
    	r = requests.get("www.baidu.com")
    	return r.content
    
    • 1
    • 2
    • 3

    7.写出5个你最熟悉linux命令,并简要说明使用场景。

    8.简述python的垃圾回收机制

    引用计数、标记回收、隔代回收
    引用计数:当一个对象被引用,则会+1,反之-1,如果为0则消除没对象,但是会导致一个循环引用的问题,所以引出标记回收。
    标记回收:成本较高
    隔代回收:分三代回收

    9.HTTP协议中,Cookie和session的区别是什么?GET和POST分别是做什么用的,你还知道其他的方法吗?

    1.HTTP是无状态请求,cookie和session都是为了记录客户端状态,cookie是保存在客服端的,大小限制为4K。session保存存在服务器,相对cookie更安全,存储信息更多,缺点就是服务器压力大
    2.GET请求获取数据,POST提交数据,DELETE删除数据,PUT更新单挑数据,PATCH更新部分数据

    10.python中有哪些方法可以实现并行,他们分别适用于什么场景?

    方法:进程、协程、线程,io多路复用(select、poll、epoll)
    场景:爬虫(进程+协程)、nginx(IO多路复用)

    11.python中的装饰器是什么?@classmethod,@staticmethod,@property,这些装饰器的用途分别是什么?

    装饰器:在不改变原来函数代码基础上,增加额外的功能
    @classmethod:类方法
    @staticmethod:静态方法
    @property:属性,把类的方法,装饰城属性一样调用

    12.简要描述数组、链表、队列、堆栈的区别?

    13.写出你知道的排序算法,并使用python实现一种排序算法,对0-100的整数列表进行排序

    14.什么是可变与不可变类型?

    15.浅拷贝和深拷贝的实现方式、区别?

    在python中对象的赋值其实就是对象的引用。当创建一个对象,把它赋值给另外一个变量的时候,python并没有拷贝这个对象,只是拷贝这个对象的引用而已。
    浅拷贝:拷贝了最外围的对象本身,内部的元素都只是拷贝了一个引用而已,也就是,把对象复制一遍,但是该对象中引用的其他对象我不复制
    深拷贝:外围和内部元素都进行了拷贝对象本身,而不是引用。也就是说,把对象复制一遍,并且该对象中引用的其他对象我也复制

    16.new()与__init__()的区别?

    17.编码和解码

    编码:encode
    解码:encode
    编码:在python3中将str转化成bytes类型,python2将unicode转化为str
    解码:在python3中将bytes按照utf-8或者gdk编码方式转为成str类型,python2是将str转化为unicode

    18.range和xrange的区别?

    xrange用户与range完全相同,所不同的就是生成的不是一个数组,而是一个生成器
    要生成很大的数字序列的时候,用xrange会比range性能优很多,因为不需要一上来就开辟一块很大的内存空间,在python3中,range()是像xrange()那样实现,xrange()被抛弃

    19.TCP/IP分别在模型的那一层?

    20.socket长连接是什么意思?

    21.http一次连接的全过程,你来说下从用户发起request-到用户response;

    22.线程和进程的联系和区别?

    23.死锁的条件有哪些?

    24.List和tuple的区别有哪些?

    25.Set类型的特点是什么?

    26.GIL是什么?他对python多线程变成有什么影响?

    27.函数参数*args和**kwargs分别是什么意思?

    28.numbers是一个列表,元素都是整型,请写出代码求numbers中的所有值的和。

    29.请为下面这个函数写一个装饰器,使用之后,在函数调用前和调用后分别输出Log到stderr(简单的print log即可)

    	def foo():
    		print("Function foo")
    
    • 1
    • 2

    30.函数bar()可能会抛出一个自定义的异常CustomError,请写代码实现如下功能:如果bar()抛出了CustomError,打印"custom error",否则打印"success"

    31.浮点数比较,是否正确,如何比较浮点数大小

    double a,b
    a = 0.1 * 3
    b = 0.1 + 0.1 + 0.1,
    a == b 
    
    • 1
    • 2
    • 3
    • 4

    32.你知道的汉子编码方式有哪些?在HTTP GET请求中,一般如何向后端传递汉字信息比较好?

    33.请根据下面的关系数据库表格,回答问题

    一张雇员表employee,例如:

    id name salary department id
    1 Joe 7000 1
    2 Henry 8000 2
    3 Sam 6000 2
    4 Max 9000 1
    5 Janet 9000 1
    6 Randv 8500 1

    一张部门表department,例如:

    id name
    1 IT
    2 Sales

    1)请写出sql,找出IT部门薪水最高的3个人

    select name from employee order by salary desc where department_id=(select id from department where name='IT') limit 3 ;
    
    • 1

    2)请写出sql,找出每个部门薪水最高的人(可能有多人并列最高)

    33.打印目录(包括子目录)下面的所有文件的绝对路径

    34.给你两个已经排序好的数组(从小到大排序)

    数组A:[1,5,8,14,16,25,28,39]
    数组B:[2,3,6,8,12,13,16,21,25,28]
    请你写一段代码,找出里面重复的元素

    35.给你一个字符串,比如“abc”,请打印出该字符串的所有排序组合

    36.列举http协议头部字段,并说明每个字段的主要作用

    37.变成:使用python实现讲数据库的studnet表中提取的数据写入db.txt

    38.简述Left join和right join的区别?

    39.简述HTTP协议下,一个HTTP请求的数据结构,简述HTTP和HTTPS协议的差异

    40.python2和python3的区别

    41.常见的HTTP状态码有哪些?

    42.你常用的musql引擎有哪些?各引擎间有什么区别?

    43.如何用python删除一个文件?

    44.获取a和b的交集和差集

    a=[21,22,55]
    b=[21,55,77]
    
    • 1
    • 2

    45.写一段代码用json数据的处理方式获取

    这一段json中第一个人的名字:

    {
       "person":[{
       "name":"yu","age":"23"},{
       "name":"zhang","age":"34"}]}
    
    • 1
    • 2
    • 3
    • 4

    46.举例说明异常模块中try except else finally的相关意义

    47.python中基本数据结构的操作

    元祖、列表、字典、集合,分别写出定义、新增、更改、删除

    48.请尽可能列举python列表的成员方法,并给出一个列表操作的答案

    a = [1,2,3,4,5]
    a[::2] = ?
    a[-2
    • 1
    • 2
  • 相关阅读:
    vue项目中 jsconfig.json是什么
    nlp入门(四)新闻分类实验
    jmeter自定义模板
    jupyter报错解决方案 : 无法将“jupyter”项识别为 cmdlet、函数、脚本文件或可运行程序的名称
    85.x的平方根(力扣)
    redis缓存雪崩、穿透、击穿
    Spring常用注解(2)
    八问八答 | 目前IAA出海到了什么阶段?原来赚钱的尽头满是营销
    音乐创作软件:ToneLIB Jam v4.7.8 Crack
    java基于微信小程序的寻医问药 医院预约挂号系统 uniapp小程序
  • 原文地址:https://blog.csdn.net/liucaixin2016/article/details/127915541