此篇基本包括了百分之九十的Python面试题!300多道等你来掌握!

第一部分 Python基础篇(80题)

为什么学习Python?

通过什么途径学习的Python?

Python和Java、PHP、C、C#、C++等其他语言的对比?

简述解释型和编译型编程语言?

Python解释器种类以及特点?

位和字节的关系?

b、B、KB、MB、GB 的关系?

请至少列举5个 PEP8 规范(越多越好)。

通过代码实现如下转换:

二进制转换成十进制:v = “0b1111011”

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

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

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

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

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

求结果:

列举常见的内置函数?

filter、map、reduce的作用?

网络异常取消重新上传

一行代码实现9*9乘法表

如何安装第三方模块?以及用过哪些第三方模块?

至少列举8个常用模块都有那些?

re的match和search区别?

什么是正则的贪婪匹配?

求结果: a. [ i % 2 for i in range(10) ] b. ( i % 2 for i in range(10) )

求结果: a. 1 or 2 b. 1 and 2 c. 1 < (2==2) d. 1 < 2 == 2

def func(a,b=[]) 这种写法有什么坑?

如何实现 “1,2,3” 变成 [‘1’,’2’,’3’] ?

如何实现[‘1’,’2’,’3’]变成[1,2,3] ?

比较: a = [1,2,3] 和 b = [(1),(2),(3) ] 以及 b = [(1,),(2,),(3,) ] 的区别?

如何用一行代码生成[1,4,9,16,25,36,49,64,81,100] ?

一行代码实现删除列表中重复的值 ?

如何在函数中设置一个全局变量 ?

logging模块的作用?以及应用场景?

请用代码简答实现stack 。

用尽量多的方法实现单例模式。

装饰器的写法以及应用场景。

异常处理写法以及如何主动跑出异常(应用场景)

什么是面向对象的mro

isinstance作用以及应用场景?

写代码并实现:

Given an array of integers, return indices of the two numbers such that they add up to a specific target.You may assume that each input would

have exactly one solution, and you may not use the same element twice.

Example:

Given nums = [2, 7, 11, 15], target = 9,

Because nums[0] + nums[1] = 2 + 7 = 9,

return [0, 1]

第二部分 网络编程和并发(34题)

简述 OSI 七层协议。

什么是C/S和B/S架构?

简述 三次握手、四次挥手的流程。

什么是arp协议?

TCP和UDP的区别?

什么是局域网和广域网?

为何基于tcp协议的通信比基于udp协议的通信更可靠?

什么是socket?简述基于tcp协议的套接字通信流程。

什么是粘包? socket 中造成粘包的原因是什么? 哪些情况会发生粘包现象?

IO多路复用的作用?

什么是防火墙以及作用?

select、poll、epoll 模型的区别?

简述 进程、线程、协程的区别 以及应用场景?

GIL锁是什么鬼?

Python中如何使用线程池和进程池?

threading.local的作用?

进程之间如何进行通信?

什么是并发和并行?

进程锁和线程锁的作用?

解释什么是异步非阻塞?

路由器和交换机的区别?

什么是域名解析?

如何修改本地hosts文件?

生产者消费者模型应用场景及优势?

什么是cdn?

LVS是什么及作用?

Nginx是什么及作用?

keepalived是什么及作用?

haproxy是什么以及作用?

什么是负载均衡?

什么是rpc及应用场景?

简述 asynio模块的作用和应用场景。

简述 gevent模块的作用和应用场景。

twisted框架的使用和应用?

1000w条数据,使用limit offset 分页时,为什么越往后翻越慢?如何解决?

什么是索引合并?

什么是覆盖索引?

简述数据库读写分离?

简述数据库分库分表?(水平、垂直)

redis和memcached比较?

redis中数据库默认是多少个db 及作用?

python操作redis的模块?

如果redis中的某个列表中的数据量非常大,如果实现循环显示每一个值?

redis如何实现主从复制?以及数据同步机制?

redis中的sentinel的作用?

如何实现redis集群?

redis中默认有多少个哈希槽?

简述redis的有哪几种持久化策略及比较?

列举redis支持的过期策略。

MySQL 里有 2000w 数据,redis 中只存 20w 的数据,如何保证 redis 中都是热点数据?

写代码,基于redis的列表实现 先进先出、后进先出队列、优先级队列。

如何基于redis实现消息队列?

如何基于redis实现发布和订阅?以及发布订阅和消息队列的区别?

什么是codis及作用?

什么是twemproxy及作用?

写代码实现redis事务操作。

redis中的watch的命令的作用?

基于redis如何实现商城商品数量计数器?

简述redis分布式锁和redlock的实现机制。

什么是一致性哈希?Python中是否有相应模块?

如何高效的找到redis中所有以oldboy开头的key?

看图写结果:

看图写结果:

看图写结果:

看图写结果:

看图写结果:

django、flask、tornado框架的比较?

什么是wsgi?

django请求的生命周期?

列举django的内置组件?

列举django中间件的5个方法?以及django中间件的应用场景?

简述什么是FBV和CBV?

django的request对象是在什么时候创建的?

如何给CBV的程序添加装饰器?

列举django orm 中所有的方法(QuerySet对象的所有方法)

only和defer的区别?

select_related和prefetch_related的区别?

filter和exclude的区别?

列举django orm中三种能写sql语句的方法。

django orm 中如何设置读写分离?

F和Q的作用?

values和values_list的区别?

如何使用django orm批量创建数据?

django的Form和ModeForm的作用?

django的Form组件中,如果字段中包含choices参数,请使用两种方式实现数据源实时更新。

django的Model中的ForeignKey字段中的on_delete参数有什么作用?

django中csrf的实现机制?

简述 django rest framework框架的认证流程。

django rest framework如何实现的用户访问频率控制?

Flask框架的优势?

Flask框架依赖组件?

Flask蓝图的作用?

列举使用过的Flask第三方组件?

简述Flask上下文管理流程?

Flask中的g的作用?

Flask中上下文管理主要涉及到了那些相关的类?并描述类主要作用?

为什么要Flask把Local对象中的的值stack 维护成一个列表?

Flask中多app应用是怎么完成?

在Flask中实现WebSocket需要什么组件?

wtforms组件的作用?

Flask框架默认session处理机制?

解释Flask框架中的Local对象和threading.local对象的区别?

Flask中 blinker 是什么?

SQLAlchemy中的 session和scoped_session 的区别?

SQLAlchemy如何执行原生SQL?

ORM的实现原理?

DBUtils模块的作用?

以下SQLAlchemy的字段是否正确?如果不正确请更正:

简述 jenkins 工具的作用?

公司如何实现代码发布?

简述 RabbitMQ、Kafka、ZeroMQ的区别?

RabbitMQ如何在消费者获取任务后未处理完前就挂掉时,保证数据不丢失?

RabbitMQ如何对消息做持久化?

RabbitMQ如何控制消息被消费的顺序?

以下RabbitMQ的exchange type分别代表什么意思?如:fanout、direct、topic。

简述 celery 是什么以及应用场景?

简述celery运行机制。

celery如何实现定时任务?

简述 celery多任务结构目录?

celery中装饰器 @app.task 和 @shared_task的区别?

简述 requests模块的作用及基本使用?

简述 beautifulsoup模块的作用及基本使用?

简述 seleninu模块的作用及基本使用?

scrapy框架中各组件的工作流程?

在scrapy框架中如何设置代理(两种方法)?

scrapy框架中如何实现大文件的下载?

scrapy中如何实现限速?

scrapy中如何实现暂定爬虫?

scrapy中如何进行自定制命令?

scrapy中如何实现的记录爬虫的深度?

scrapy中的pipelines工作原理?

scrapy的pipelines如何丢弃一个item对象?

简述scrapy中爬虫中间件和下载中间件的作用?

scrapy-redis组件的作用?

scrapy-redis组件中如何实现的任务的去重?

scrapy-redis的调度器如何实现任务的深度优先和广度优先?

简述 vitualenv 及应用场景?

简述 pipreqs 及应用场景?

在Python中使用过什么代码检查工具?

简述 saltstack、ansible、fabric、puppet工具的作用?

B Tree和B+ Tree的区别?

请列举常见排序并通过代码实现任意三种。

请列举常见查找并通过代码实现任意三种。

欢迎大家关注我的博客或者公证号:https://home.cnblogs.com/u/Python1234/               Python学习交流

也欢迎大家加入我的千人交流答疑群:125240963

 

猜你喜欢

转载自www.cnblogs.com/Python1234/p/9083270.html