python 面试题

Posted jcjc

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 面试题相关的知识,希望对你有一定的参考价值。

1、python2 和 python3 的区别? 列举五个:
   1、Python3 使用 print 必须要以小括号包裹打印内容,比如 print(‘hi’)

    Python2 即可以使用带小括号的方式,也可以使用一个空格分割打印,比如 print ‘hi’

  2、python2 中的range(1, 10) 返回列表, Python3 中返回迭代器,节约内存

  3、Python2 中使用ascii 编码,Python3 中使用 utf-8 编码

  4、Python2 中 unicode 表示字符串序列,str 表示字节序列

    Python3 中 str 表示字符串序列, byte 表示字节序列

  5、Pyhon2 中为了正常显示中文, 需要映入 coding 声明, Python3 中不需要

  6、Python2 中是 raw_input() 函数, Python3 中是 input() 函数

 

2、在 Python 中可变数据类型和不可变数据类型,并简述原理:

  1、不可变数据类型:数值型、字符串和string和元组tuple

     不允许变量的值发生变化,如果改变了变量的值,相当于是新建了一个对象,而对于相同值的对象,在内存中则只有一个对象(一个地址),如下图用 id() 方法可以打印对象的id

技术图片

  2、可变数据类型:列表 list 和 字典dict;

    允许变量的值发生变化,即如果对变量进行 append 、 += 等这种操作后,只改变了变量的值,而不会新建一个对象,变量应用的对象的地址不会变化,不过对于相同值的不同对象,在内存中则会存在不同的对象,即每个对象都有自己的地址,相当于同值的对象保存了多分,这里不存在应用计数,是实实在在的对象

技术图片

 

3、 s = ‘wwweeeferrgrgdfgbhghgggg‘ ,去重并从小到大排序输出 “bdefghrw”

技术图片

4、用 lambda 表达式实现两个数相乘

  技术图片

 

 5、字典根据键从小到大排序 dict = {"name":"zs","age":18,"city":"深圳","tel":"1362626627"}

   技术图片

 6、利用collections库中的Counter方法统计字符串每个单词出现的次数:kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h

技术图片

7、字符串a = "not 404 found 张三 99 深圳",每个词中间是空格,用正则表达式过滤掉英文和数字,最终输出 “张三 , 深圳”

 技术图片

8、列表推导式求列表所有奇数并构造新的列表, a = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

技术图片

 

 

31、两个列表[1,5,7,9]和[2,2,6,8]合并为[1,2,2,3,6,7,8,9]
32、用python删除文件和用linux命令删除文件方法
33、log日志中,我们需要用时间戳记录error,warning等的发生时间,请用datetime模块打印当前时间戳 “2018-04-01 11:38:54”
34、数据库优化查询方法
35、请列出你会的任意一种统计图(条形图、折线图等)绘制的开源库,第三方也行
36、写一段自定义异常代码
37、正则表达式匹配中,(.*)和(.*?)匹配区别?
38、简述Django的orm
39、[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]
40、x="abc",y="def",z=["d","e","f"],分别求出x.join(y)和x.join(z)返回的结果
41、举例说明异常模块中try except else finally的相关意义
42、python中交换两个数值
43、举例说明zip()函数用法
44、a="张明 98分",用re.sub,将98替换为100
45、写5条常用sql语句
46、a="hello"和b="你好"编码成bytes类型
47、[1,2,3]+[4,5,6]的结果是多少?
48、提高python运行效率的方法
49、简述mysql和redis区别
50、遇到bug如何处理
51、1、正则匹配,匹配日期2018-03-20
url=‘https://sycm.taobao.com/bda/tradinganaly/overview/get_summary.json?dateRange=2018-03-20%7C2018-03-20&dateType=recent1&device=1&token=ff25b109b&_=1521595613462‘
52、list=[2,3,5,4,9,6],从小到大排序,不许用sort,输出[2,3,4,5,6,9]
53、写一个单列模式
54、保留两位小数
题目本身只有a="%.03f"%1.3335,让计算a的结果,为了扩充保留小数的思路,提供round方法(数值,保留位数)
55、求三个方法打印结果
56、列出常见的状态码和意义
57、分别从前端、后端、数据库阐述web项目的性能优化
58、使用pop和del删除字典中的"name"字段,dic={"name":"zs","age":18}
59、列出常见MYSQL数据存储引擎
60、计算代码运行结果,zip函数历史文章已经说了,得出[("a",1),("b",2),("c",3),("d",4),("e",5)]
61、简述同源策略
62、简述cookie和session的区别
63、简述多线程、多进程
64、简述any()和all()方法
65、IOError、AttributeError、ImportError、IndentationError、IndexError、KeyError、SyntaxError、NameError分别代表什么异常
66、python中copy和deepcopy区别
67、列出几种魔法方法并简要介绍用途
68、C:\\Users\\ry-wu.junya\\Desktop>python 1.py 22 33命令行启动程序并传参,print(sys.argv)会输出什么数据?
69、请将[i for i in range(3)]改成生成器
70、a = "  hehheh  ",去除收尾空格
71、举例sort和sorted对列表排序,list=[0,-1,3,-10,5,9]
72、对list排序foo = [-5,8,0,4,9,-4,-20,-2,8,2,-4],使用lambda函数从小到大排序
73、使用lambda函数对list排序foo = [-5,8,0,4,9,-4,-20,-2,8,2,-4],输出结果为
[0,2,4,8,8,9,-2,-4,-4,-5,-20],正数从小到大,负数从大到小
74、列表嵌套字典的排序,分别根据年龄和姓名排序
75、列表嵌套元组,分别按字母和数字排序
76、列表嵌套列表排序,年龄数字相同怎么办?
77、根据键对字典排序(方法一,zip函数)
78、根据键对字典排序(方法二,不用zip)
79、列表推导式、字典推导式、生成器
80、最后出一道检验题目,根据字符串长度排序,看排序是否灵活运用
81、举例说明SQL注入和解决办法
82、s="info:xiaoZhang 33 shandong",用正则切分字符串输出[‘info‘, ‘xiaoZhang‘, ‘33‘, ‘shandong‘]
83、正则匹配以163.com结尾的邮箱
84、递归求和
85、python字典和json字符串相互转化方法
86、MyISAM 与 InnoDB 区别:
87、统计字符串中某字符出现次数
88、字符串转化大小写
89、用两种方法去空格
90、正则匹配不是以4和7结尾的手机号
91、简述python引用计数机制
92、int("1.4"),int(1.4)输出结果?
93、列举3条以上PEP8编码规范
94、正则表达式匹配第一个URL
95、正则匹配中文
96、简述乐观锁和悲观锁
97、r、r+、rb、rb+文件打开模式区别
98、Linux命令重定向 > 和 >>
99、正则表达式匹配出<html><h1>www.itcast.cn</h1></html>

 

100、python传参数是传值还是传址?
---------------------
作者:python爬虫人工智能大数据
来源:CSDN
原文:https://blog.csdn.net/weixin_41666747/article/details/79942847
版权声明:本文为博主原创文章,转载请附上博文链接!

 

以上是关于python 面试题的主要内容,如果未能解决你的问题,请参考以下文章

最强面试题整理第一弹:Python 基础面试题(附答案)

最强面试题整理第一弹:Python 基础面试题(附答案)

最强面试题整理第一弹:Python 基础面试题(附答案)

最强面试题整理第二弹:Python 进阶面试题(附答案)

最强面试题整理第二弹:Python 进阶面试题(附答案)

最强面试题整理第二弹:Python 进阶面试题(附答案)