python 面试题

TesterHome 2020-09-16 22:35

  • Python 基础
    • 15.python 新式类和经典类的区别?
    • 16.python 中内置的数据结构有几种?
    • 17.python 如何实现单例模式?请写出两种实现方式?
    • 18.反转一个整数,例如-123 --> -321
    • 19.设计实现遍历目录与子目录,抓取.pyc 文件
    • 20.一行代码实现 1-100 之和
    • 21.Python-遍历列表时删除元素的正确做法
    • 22.字符串的操作题目
    • 23.可变类型和不可变类型
    • 24.is 和==有什么区别?
    • 25.求出列表所有奇数并构造新列表
    • 26.用一行 python 代码写出 1+2+3+10248
    • 27.Python 中变量的作用域?(变量查找顺序)
    • 28.字符串 "123" 转换成 123,不使用内置 api,例如 int()
    • 29.Given an array of integers
    • 30.python 代码实现删除一个 list 里面的重复元素
    • 31.统计一个文本中单词频次最高的 10 个单词?
    • 32.请写出一个函数满足以下条件
    • 33.使用单一的列表生成式来产生一个新的列表
    • [34.用一行代码生成1,4,9,16,25,36,49,64,81,100]
    • 35.输入某年某月某日,判断这一天是这一年的第几天?
    • 36.两个有序列表,l1,l2,对这两个列表进行合并不可使用 extend
    • 37.给定一个任意长度数组,实现一个函数
    • 38.写一个函数找出一个整数数组中,第二大的数
    • 39.阅读一下代码他们的输出结果是什么?
    • 40.统计一段字符串中字符出现的次数
    • 41.super 函数的具体用法和场景
    • 5.现有字典 d= {'a':24,'g':52,'i':12,'k':33}请按 value 值进行排序?
    • 6.字典推导式
    • 7.请反转字符串 "aStr"?
    • 8.将字符串 "k:1 |k1:2|k2:3|k3:4",处理成字典 {k:1,k1:2,...}
    • 9.请按 alist 中元素的 age 由大到小排序
    • 10.下面代码的输出结果将是什么?
    • 11.写一个列表生成式,产生一个公差为 11 的等差数列
    • 12.给定两个列表,怎么找出他们相同的元素和不同的元素?
    • 13.请写出一段 python 代码实现删除 list 里面的重复元素?
    • 14.给定两个 list A,B ,请用找出 A,B 中相同与不同的元素
    • 3.输入日期, 判断这一天是这一年的第几天?
    • 4.打乱一个排好序的 list 对象 alist?
    • 1.有一个 jsonline 格式的文件 file.txt 大小约为 10K
    • 2.补充缺失的代码
    • 文件操作
    • 模块与包
    • 数据类型
    • 企业面试题
  • Python 高级
    • 123.怎么实现强行关闭客户端和服务器之间的连接?
    • 124.简述 TCP 和 UDP 的区别以及优缺点?
    • 125.简述浏览器通过 WSGI 请求动态资源的过程?
    • 126.描述用浏览器访问 www.baidu.com 的过程
    • 127.Post 和 Get 请求的区别?
    • 128.cookie 和 session 的区别?
    • 129.列出你知道的 HTTP 协议的状态码,说出表示什么意思?
    • 130.请简单说一下三次握手和四次挥手?
    • 131.说一下什么是 tcp 的 2MSL?
    • 132.为什么客户端在 TIME-WAIT 状态必须等待 2MSL 的时间?
    • 133.说说 HTTP 和 HTTPS 区别?
    • 134.谈一下 HTTP 协议以及协议头部中表示数据类型的字段?
    • 135.HTTP 请求方法都有什么?
    • 136.使用 Socket 套接字需要传入哪些参数 ?
    • 137.HTTP 常见请求头?
    • 138.七层模型?
    • 139.url 的形式?
    • 106.进程总结
    • 107.谈谈你对多进程,多线程,以及协程的理解,项目是否用?
    • 108.Python 异常使用场景有那些?
    • 109.多线程共同操作同一个数据互斥锁同步?
    • 110.什么是多线程竞争?
    • 111.请介绍一下 Python 的线程同步?
    • 112.解释以下什么是锁,有哪几种锁?
    • 113.什么是死锁?
    • 114.多线程交互访问数据,如果访问到了就不访问了?
    • 115.什么是线程安全,什么是互斥锁?
    • 116.说说下面几个概念:同步,异步,阻塞,非阻塞?
    • 117.什么是僵尸进程和孤儿进程?怎么避免僵尸进程?
    • 118.python 中进程与线程的使用场景?
    • 119.线程是并发还是并行,进程是并发还是并行?
    • 120.并行(parallel)和并发(concurrency)?
    • 121.IO 密集型和 CPU 密集型区别?
    • 122.python asyncio 的原理?
    • 94.请写出一段代码用正则匹配出 ip?
    • 95.a = “abbbccc”,用正则匹配为 abccc,不管有多少 b,就出现一次?
    • 96.Python 字符串查找和替换?
    • 97.用 Python 匹配 HTML g tag 的时候,<.> 和 <.*?> 有什么区别
    • 98.正则表达式贪婪与非贪婪模式的区别?
    • 99.写出开头匹配字母和下划线,末尾是数字的正则表达式?
    • 100.正则表达式操作
    • 101.请匹配出变量 A 中的 json 字符串。
    • 102.怎么过滤评论中的表情?
    • 103.简述 Python 里面 search 和 match 的区别
    • 104.请写出匹配 ip 的 Python 正则表达式
    • 105.Python 里 match 与 search 的区别?
    • 90.Python 中的可变对象和不可变对象?
    • 91.Python 的魔法方法
    • 92.面向对象中怎么实现只读属性?
    • 93.谈谈你对面向对象的理解?
    • 79.对设计模式的理解,简述你了解的设计模式?
    • 80.请手写一个单例
    • 81.单例模式的应用场景有那些?
    • [82.用一行代码生成1,4,9,16,25,36,49,64,81,100]
    • 83.对装饰器的理解,并写出一个计时器记录方法执行性能的装饰器?
    • 84.解释以下什么是闭包?
    • 85.函数装饰器有什么作用?
    • 86.生成器,迭代器的区别?
    • 87.X 是什么类型?
    • 88.请用一行代码 实现将 1-N 的整数列表以 3 为单位分组
    • 89.Python 中 yield 的用法?
    • 52.python 常见的列表推导式?
    • 53.简述 read、readline、readlines 的区别?
    • 54.什么是 Hash(散列函数)?
    • 55.python 函数重载机制?
    • 56.写一个函数找出一个整数数组中,第二大的数
    • 57.手写一个判断时间的装饰器
    • 58.使用 Python 内置的 filter()方法来过滤?
    • 59.编写函数的 4 个原则
    • 60.函数调用参数的传递方式是值传递还是引用传递?
    • 61.如何在 function 里面设置一个全局变量
    • 62.对缺省参数的理解 ?
    • 63.Mysql 怎么限制 IP 访问?
    • 64.带参数的装饰器?
    • 65.为什么函数名字可以当做参数用?
    • 66.Python 中 pass 语句的作用是什么?
    • 67.有这样一段代码,print c 会输出什么,为什么?
    • 68.交换两个变量的值?
    • 69.map 函数和 reduce 函数?
    • 70.回调函数,如何通信的?
    • 71.Python 主要的内置数据类型都有哪些?print dir( ‘a ’) 的输出?
    • [72.map(lambda x:xx,y for y in range(3)])的输出?
    • 73.hasattr() getattr() setattr() 函数使用详解?
    • 74.一句话解决阶乘函数?
    • 75.什么是 lambda 函数?有什么好处?
    • 76.递归函数停止的条件?
    • 77.下面这段代码的输出结果将是什么?请解释。
    • 78.什么是 lambda 函数?它有什么好处?写一个匿名函数求两个数的和
    • 48.哪些操作会导致 Python 内存溢出,怎么处理?
    • 49.关于 Python 内存管理,下列说法错误的是 B
    • 50.Python 的内存管理机制及调优手段?
    • 51.内存泄露是什么?如何避免?
    • 42.Python 中类方法、类实例方法、静态方法有何区别?
    • 43.遍历一个 object 的所有属性,并 print 每一个属性名?
    • 44.写一个类,并让它尽可能多的支持操作符?
    • 45.介绍 Cython,Pypy Cpython Numba 各有什么缺点
    • 46.请描述抽象类和接口类的区别和联系
    • 47.Python 中如何动态获取和设置对象的属性?
    • 元类
    • 内存管理与垃圾回收机制
    • 函数
    • 设计模式
    • 面向对象
    • 正则表达式
    • 系统编程
    • 网络编程
  • Web
    • 159.试列出至少三种目前流行的大型数据库
    • 160.列举您使用过的 Python 网络爬虫所用到的网络数据包?
    • 161.爬取数据后使用哪个数据库存储数据的,为什么?
    • 162.你用过的爬虫框架或者模块有哪些?优缺点?
    • 163.写爬虫是用多进程好?还是多线程好?
    • 164.常见的反爬虫和应对方法?
    • 165.解析网页的解析器使用最多的是哪几个?
    • 166.需要登录的网页,如何解决同时限制 ip,cookie,session
    • 167.验证码的解决?
    • 168.使用最多的数据库,对他们的理解?
    • 169.编写过哪些爬虫中间件?
    • 170.“极验”滑动验证码如何破解?
    • 171.爬虫多久爬一次,爬下来的数据是怎么存储?
    • 172.cookie 过期的处理问题?
    • 173.动态加载又对及时性要求很高怎么处理?
    • 174.HTTPS 有什么优点和缺点?
    • 175.HTTPS 是如何实现安全传输数据的?
    • 176.TTL,MSL,RTT 各是什么?
    • 177.谈一谈你对 Selenium 和 PhantomJS 了解
    • 178.平常怎么使用代理的 ?
    • 179.存放在数据库(redis、mysql 等)。
    • 180.怎么监控爬虫的状态?
    • 181.描述下 scrapy 框架运行的机制?
    • 182.谈谈你对 Scrapy 的理解?
    • 183.怎么样让 scrapy 框架发送一个 post 请求(具体写出来)
    • 184.怎么监控爬虫的状态 ?
    • 185.怎么判断网站是否更新?
    • 186.图片、视频爬取怎么绕过防盗连接
    • 187.你爬出来的数据量大概有多大?大概多长时间爬一次?
    • 188.用什么数据库存爬下来的数据?部署是你做的吗?怎么部署?
    • 189.增量爬取
    • 190.爬取下来的数据如何去重,说一下 scrapy 的具体的算法依据。
    • 191.Scrapy 的优缺点?
    • 192.怎么设置爬取深度?
    • 193.scrapy 和 scrapy-redis 有什么区别?为什么选择 redis 数据库?
    • 194.分布式爬虫主要解决什么问题?
    • 195.什么是分布式存储?
    • 196.你所知道的分布式爬虫方案有哪些?
    • 197.scrapy-redis,有做过其他的分布式爬虫吗?
    • 142.什么是 wsgi,uwsgi,uWSGI?
    • 143.Django、Flask、Tornado 的对比?
    • 144.CORS 和 CSRF 的区别?
    • 145.Session,Cookie,JWT 的理解
    • 146.简述 Django 请求生命周期
    • 147.用的 restframework 完成 api 发送时间时区
    • 148.nginx,tomcat,apach 到都是什么?
    • 149.请给出你熟悉关系数据库范式有哪些,有什么作用?
    • 150.简述 QQ 登陆过程
    • 151.post 和 get 的区别?
    • 152.项目中日志的作用
    • 153.django 中间件的使用?
    • 154.谈一下你对 uWSGI 和 nginx 的理解?
    • 155.Python 中三大框架各自的应用场景?
    • 156.Django 中哪里用到了线程?哪里用到了协程?哪里用到了进程?
    • 157.有用过 Django REST framework 吗?
    • 158.对 cookies 与 session 的了解?他们能单独用吗?
    • 140.对 Flask 蓝图(Blueprint)的理解?
    • 141.Flask 和 Django 路由映射的区别?
    • Flask
    • Django
    • 爬虫
  • 数据库
    • 242.找出 1G 的文件中高频词
    • 243.一个大约有一万行的文本文件统计高频词
    • 244.怎么在海量数据中找出重复次数最多的一个?
    • 245.判断数据是否在大量数据中
    • 222.数组中出现次数超过一半的数字-Python 版
    • 223.求 100 以内的质数
    • 224.无重复字符的最长子串-Python 实现
    • 225.通过 2 个 5/6 升得水壶从池塘得到 3 升水
    • 226.什么是 MD5 加密,有什么特点?
    • 227.什么是对称加密和非对称加密
    • 228.冒泡排序的思想?
    • 229.快速排序的思想?
    • 230.如何判断单向链表中是否有环?
    • 231.你知道哪些排序算法(一般是通过问题考算法)
    • 232.斐波那契数列
    • 233.如何翻转一个单链表?
    • 234.青蛙跳台阶问题
    • 235.两数之和 Two Sum
    • 236.搜索旋转排序数组 Search in Rotated Sorted Array
    • 237.Python 实现一个 Stack 的数据结构
    • 238.写一个二分查找
    • 239.set 用 in 时间复杂度是多少,为什么?
    • [240.列表中有 n 个正整数范围在0,1000],进行排序;
    • 241.面向对象编程中有组合和继承的方法实现新的类
    • 213.编写测试计划的目的是
    • 214.对关键词触发模块进行测试
    • 215.其他常用笔试题目网址汇总
    • 216.测试人员在软件开发过程中的任务是什么
    • 217.一条软件 Bug 记录都包含了哪些内容?
    • 218.简述黑盒测试和白盒测试的优缺点
    • 219.请列出你所知道的软件测试种类,至少 5 项
    • 220.Alpha 测试与 Beta 测试的区别是什么?
    • 221.举例说明什么是 Bug?一个 bug report 应包含什么关键字?
    • 211.MongoDB 中对多条记录做更新操作命令是什么?
    • 212.MongoDB 如何才会拓展到多个 shard 里?
    • 207.Redis 宕机怎么解决?
    • 208.redis 和 mecached 的区别,以及使用场景
    • 209.Redis 集群方案该怎么做?都有哪些方案?
    • 210.Redis 回收进程是如何工作的
    • 198.主键 超键 候选键 外键
    • 199.视图的作用,视图可以更改么?
    • 200.drop,delete 与 truncate 的区别
    • 201.索引的工作原理及其种类
    • 202.连接的种类
    • 203.数据库优化的思路
    • 204.存储过程与触发器的区别
    • 205.悲观锁和乐观锁是什么?
    • 206.你常用的 mysql 引擎有哪些?各引擎间有什么区别?
    • MySQL
    • Redis
    • MongoDB
    • 测试
    • 数据结构
    • 大数据


推荐阅读