企业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
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")
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
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 ;
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]
45.写一段代码用json数据的处理方式获取
这一段json中第一个人的名字:
{"person":[{"name":"yu","age":"23"},{"name":"zhang","age":"34"}]}
46.举例说明异常模块中try except else finally的相关意义
47.python中基本数据结构的操作
元祖、列表、字典、集合,分别写出定义、新增、更改、删除
48.请尽可能列举python列表的成员方法,并给出一个列表操作的答案
a = [1,2,3,4,5]
a[::2] = ?
a[-2] = ?
49.python中的变量作用域(变量查找顺序)
50.git的常用命令
git clone <url> :克隆远程版本库
git init :初始化本地版本库
git status :查看状态
git diff :查看变更内容
git add . :跟踪所有改动过的文件
git add <file> :跟踪指定的文件
git commit -m "commit message" :提交所有更新过的文件
git log :查看提交历史
git reset --hard HEAD : 撤销工作目录中所有未提交文件的修改内容
git branch :显示所有本地分支
git checkout <branch/tag> :切换到指定分支或标签
git branch <new-branch> :切换到指定分支或标签
git push <remote> <branch> :上传代码并快速合并
git push <remote> : <branch/tag-name> :删除远程分支或标签
51.is和==的区别
is比较的是两个实体对象是不是完全相同,它们是不是同一个对象,占用的内存地址是否相同
== 比较的是两个对象的内容是否相等,即内存地址可以不一样,内容一样就可以了
52.什么是lambda函数?它有什么好处?
53.分别写一个或多个关于filter()、reduce()、map()的使用实例
54.单引号,双引号,三引号的区别
单引号和双引号:主要用来表示字符串
三单引号’‘‘Python’’':也可以标识字符串一般用来输入多行文本,或者用户大段的注释
三双引号"““Python””":一般用在类里面,用来注释类
55.python里面如何实现tuple和list的转换
56.请写一段python代码实现删除一个list里面的重复元素
list_element = ['a','c','z','x','a']
delete_element = list(set(list_element)) #利用集合的唯一性删除重复元素
delete_element.sort(key=list_element.index) #对修改后的列表进行排序
57.python中pass语句的作用是什么?
58.python中如何产生随机数?
59.请简述TCP三次握手的过程?
60.题目,把"www.baidu.com",反转字符串
61.如何判断字符串A里面是否包含字符串B里面所有的字符
62.iptables知识考察,根据要求写出防火墙规则?
1.屏蔽192.168.1.5访问本机dns服务端口?
2.允许10.1.1.0/24访问本机的udp 8888 9999端口
63.编写一个脚本,5分钟检查一次日期,发现有暴力SSH破解现象的,提取此类IP地址,并去重,并按降序排序
要求:同一个IP暴力破解超过10次,自动屏蔽IP地址
指定办公室IP地址(192.168.100.100)为可信任IP地址,不受屏蔽规则限制,以下为日志格式
May 4 03:43:07 tz-monitor sshd[14003]: Failed password for root 124.232.135.84 port 25251 ssh2
May 4 03:43:07 tz-monitor sshd[14082]: Invalid user postgres from 124.232.135.84
64.业务服务器192.168.1.2访问192.168.1.3数据接口,无法正常返回数据,请根据以上给出信息写出排查思路
65. python中如下一个字典,请按照key进行排序
tmp={'carry':'17','bob':'21','matty':'23','jack':'33','tom':'16','alex':'23'}
66. 请给出下面代码片段的输出
def test():try:if 2 > 1:raise ValueError("Something wrong!")except ValueError as e:print("Error occurred!")returnfinally:print("Done")test()
67.请列举常见的HTTP头及其作用
68.请列举常见的HTTP状态响应码及其意义
69.请简述对RESTful API设计规范的理解
70.请简述HTTP缓存机制
71. Python里面的search()和match()的区别?
72.什么是协程?python的协程是如何实现的?
73.简述select和epoll的原理和区别
74. 手写s=【1,2,3】w=[4,5,6] z=[(1,4),(2,5),{3,6}] 这个实现
75.手写socket服务客户端与客户
76.int,fload,str,tuple,list,set,dict前面这些类型那些可以做dict的key,那些可以做dict的value
77.请写出一段python代码实现删除一个list里面的重复元素
78.写出结果为[1,4,9,16,25…,100]的列表推导式
79.写出结果为[1:1,2:4,3:9,4:16,5:25…10:100]的字典推导式
80.TCP和udp的区别,简单说一下HTTP?
81.输入一个url到看到页面经历了啥
82.你了解服务器吗 Nginx和Apache,你选哪一个,区别
83.什么是lambda函数?它有什么好处?
84.逻辑运算符的优先级
85.python是如何进行类型转换的
86.写出一段python代码实现删除一个list里面的重复元素
87.python中pass语句的作用是什么
88.介绍一下python下range()和xrange()函数的用法?
89.python里面如何拷贝一个对象?
90.如何使用python来进行查询和替换一个文本字符串?
91.读取一个py文件,去掉注释和每一行右侧的空格,然后在前端显示出来(要保证左侧空格在页面显示)
92.mysql inner join和left join的区别
93.消息队列在你的项目的应用场景是啥?
94.SVN和GIT有什么区别?
95.MYSQL有哪些存储引擎,优化mysql数据库的方法有哪些?
96.python中单引号,双引号,三引号的区别
97.在python中,list,tuple,dict,set有什么区别
98.请写出打印结果
x=[0,1]
i= 0
i,x[i]=1,2 #i=1,x[1]=2
print(x)
## return:[0,2]
99.请用自己的算法,按升序合并如下两个list,并去除重复的元素:
list1 = [2, 3, 8, 4, 9, 5, 6]
list2 = [2, 3, 8, 4, 9, 5, 7]
print(list(set(list1 + list2))) # 交集
print(list(set(list1) - set(list2)) + list(set(list2) - set(list1))) # 并集合
100.关系型数据库中,表与表之间有左连接、内连接、外连接。分别解析下他们的含义及区别?
101.Redis有哪些数据结构?有什么用?
102.是否使用VPN,VPN的底层原理?
103.Python的深拷贝和浅拷贝的区别?
104.不同拷贝方式的区别
1.深浅拷贝都是对源对象的复制,占用不同的内存空间
2.不可变类型的对象,对于深浅拷贝毫无影响,最终的地址值和值都是相等的
3.可变类型:
= 浅拷贝:值相等,地址相等
copy浅拷贝:值相等,地址不相等
deepcopy深拷贝:值相等,地址不相等
105.python中可变对象和不可变对象
106.写出下面代码的输出值
l = [1,4,9]
def f(x,l=[]):for i in range(x):l.append(i**2)return l
print(f(4),l)
print(f(5,l),l)
print(f(6),l)#[0, 1, 4, 9] [1, 4, 9]
#[1, 4, 9, 0, 1, 4, 9, 16] [1, 4, 9, 0, 1, 4, 9, 16]
#[0, 1, 4, 9, 0, 1, 4, 9, 16, 25] [1, 4, 9, 0, 1, 4, 9, 16]
107.写出下面列表的取值
L = [1, 2, 3, 4, 5, 6, 7]print(L[1:]) # 读取列表中第二个元素 [2, 3, 4, 5, 6, 7]
print(L[3:5]) # [4, 5] # 左开右闭,左边读取第四个到第五个
print(L[::2]) # [1,3,5,7]
print(L[-2:-5]) # [] #顺序不对,需要从小到大
print(L[-3:-1]) # [5, 6] #从小到大,右边第三个开始数
108.如何查看http的并发请求数与其TCP连接状态
109.写出抓包查看到192.168.5.100服务器的8080端口的命令
110.怎样获取字段中所有键的列表
111.map,filter,reduce是什么
112.写一下你之前写代码遇到过的问题和你解决的思路?
113.如下代码执行后,L和m的内容分别是什么
企业python面试题相关推荐
- 杭州python就业情况_杭州Python就业前景如何 企业常问的Python面试题有哪些
人工智能时代的来临带动了Python的火爆,企业对Python人才需求迫切,选择学习Python的Python的人与日俱增.有人好奇杭州Python就业前景如何,有人想知道企业常问的Python面试题 ...
- 300道Python面试题,备战春招!
作者 | kenwoodjw 责编 | Jane 出品 | Python大本营(ID:pythonnews) 程序员转行学什么语言? https://edu.csdn.net/topic/ai30? ...
- 三年python面试题_300道Python面试题
原标题:300道Python面试题 Python 工程师也分不同的技术岗位,初级.中级与高级开发工程师需要具备的技能也不同. 然而,无论是零经验还是 Python 老司机,对待每一次面试与笔试,都不能 ...
- python面试题_春招苦短,我用百道Python面试题备战
对于机器学习算法工程师而言,Python是不可或缺的语言,它的优美与简洁令人无法自拔.那么你了解过Python编程面试题吗?从Python基础到网页爬虫你是否能全方位Hold住?今天,机器之心为读者们 ...
- 重磅!这个 GitHub 汇总了 300 道 Python 面试题!
本文来自机器之心,作者kenwoodjw 对于机器学习算法工程师而言,是不可或缺的语言,它的优美与简洁令人无法自拔.那么你了解过Python编程面试题吗?从Python基础到网页爬虫你是否能全方位Ho ...
- python最新面试题_2018年最新Python面试题及答案
2018 年最新 Python 面试题及答案 找工作是每个学习 Python 人员的目标,为了更好的找到工作,刷面试题是 必不可少的, 了解最新企业招聘试题, 可以让你面试更加的顺利. 小编整理了一 ...
- 华为python面试题库_我收集了100道Python面试题,开源到了Github
对于机器学习算法工程师而言,Python是不可或缺的语言,它的优美与简洁令人无法自拔.那么你了解过Python编程面试题吗?从Python基础到网页爬虫你是否能全方位Hold住?今天,机器之心为读者们 ...
- 老男孩上海校区Python面试题
python面试题 第一章:python基础 数据类型: 1 字典: 1.1 现有字典 dict={'a':24,'g':52,'i':12,'k':33}请按字典中的 value 值进行排序? 1. ...
- 史无前例的这个 GitHub 汇总了 300 道 Python 面试题
对于机器学习算法工程师而言,是不可或缺的语言,它的优美与简洁令人无法自拔.那么你了解过Python编程面试题吗?从Python基础到网页爬虫你是否能全方位Hold住?今天,机器之心为读者们推荐一个Gi ...
- 面试前赶紧看了5道Python Web面试题,Python面试题No17
目录 本面试题题库,由公号:非本科程序员 整理发布 第1题: Flask中的请求上下文和应用上下文是什么? 第2题:django中间件的使用? 第3题: django开发中数据做过什么优化? 第4题: ...
最新文章
- python循环语句-详解Python中的循环语句的用法
- 牛客国庆集训派对Day2 F、平衡二叉树 【构造+记忆化搜索】
- NAT(修改IP包的IP或者Port) NAT穿越 keepalive包(IP包),保持映射关系
- 撩妹学会这一招,就没有人能拒绝你!
- 这篇看完我得理解ES6中中常见语法
- java 文本排序_如何使用Java按最高编号对文本文件进行排序
- electron-vue使用electron-updater实现自动更新
- 【记录】ASP.NET MVC MapRoute .htm 不起作用
- 请画出一个抓虫系统的架构图并说明你的爬虫需要如何优化来提升性能
- 继承接口Java多线程(二)、启动一个线程的3种方式
- html和css的编程规范,Bootstrap CSS编码规范
- LINUX SHELL中大小写转换及注意事项
- Axure RP9 的元件库
- PDCA循环的四个阶段八个步骤,你知道么?
- wh计算公式_锂电池计算公式wh 锂电池的mah和wh如何换算?
- linux下配置内网ip
- openwrt 格式化_如何在路由器上格式化 U 盘、硬盘
- 小鹿爬虫系列——静态网站页面爬取
- 论文阅读:Neural Machine Translation By Jointly Learning To Align And Translate
- 软件测试自学怎么学?
热门文章
- 彻底搞懂git代码冲突问题----产生冲突以及解决冲突
- Zotero如何更改字体大小
- 人体神经元细胞分为三类,人体神经元细胞模式图
- [人工智能-深度学习-23]:卷积神经网络CNN - 卷积核的本质是多维输入的神经元
- 【集锦】类脑相关新闻
- ABB机器人与OMRON PLC Socket通信
- 使用Lucene.net+盘古分词实现搜索查询
- 数据库第6章总结——关系数据理论
- xdg在Linux中的用法,Linux – XDG (X Desktop Group)
- 设计一个高性能三维渲染服务器,最强大脑-CATIA飞机协同设计制造工作站配置方案2016...