python面试题搜罗

本文整理了Python面试中常见的20个问题,涵盖字符串操作、列表处理、文件操作、排序、随机数生成、代码分析、GIL概念等,适合准备Python面试者参考学习。
摘要由CSDN通过智能技术生成

本文为网络资源搜罗整理学习所得,持续更新

1.如何用Python来进行查询和替换一个文本字符串?

使用re模块中的sub()函数或者subn()函数来进行查询和替换

格式:sub(replacement, string[,count=0])(replacement是被替换成的文本,string是需要被替换的文本,count是一个可选参数,指最大被替换的数量)
>>> import re

>>>p=re.compile(‘blue|white|red’)

>>>print(p.sub(‘colour’,'blue socks and red shoes’))

colour socks and colourshoes

>>>print(p.sub(‘colour’,'blue socks and red shoes’,count=1))

colour socks and redshoes
subn()方法执行的效果跟sub()一样,不过它会返回一个二维数组,包括替换后的新的字符串和总共替换的数量

2.请写出一段Python代码实现删除一个list里面的重复元素

假设列表lst = [1, 3, 3, 2, 6, 2, 43, 5, 53, 4, 53, 3]

2.1 使用set函数:

>>>list(set(lst))

2.2 使用字典函数:

>>> b={}
>>> b=b.fromkeys(lst)
>>> c=list(b.keys())

2.3 循环判断处理:

>>> result = []
>>> for i in lst:
...     if i not in result:
...         result.append(i)

3.Python里面match()和search()的区别?

re模块中match(pattern,string[,flags]),检查string的开头是否与pattern匹配。

re模块中research(pattern,string[,flags]),在string搜索pattern的第一个匹配值。

4.Python里面如何生成随机数?

答:random模块

随机整数:random.randint(a,b):返回随机整数x,a<=x<=b

random.randrange(start,stop,[,step]):返回一个范围在(start,stop,step)之间的随机整数,不包括结束值。

随机实数:random.random( ):返回0到1之间的浮点数

random.uniform(a,b):返回指定范围内的浮点数。

5.有没有一个工具可以帮助查找python的bug和进行静态的代码分析?

PyChecker是一个python代码的静态分析工具,它可以帮助查找python代码的bug, 会对代码的复杂度和格式提出警告

Pylint是另外一个工具可以进行codingstandard检查

6. 给定一个路径,请遍历输出:

import os  
def print_directory_contents
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值