Python必刷面试题(带答案)不断更新

原面试题链接  https://blog.csdn.net/a707931675/article/details/115216066?utm_medium=distribute.pc_relevant.none-task-blog-baidujs_title-8&spm=1001.2101.3001.4242

14、python中生成随机整数、随机小数、0—1之间小数方法

#python中生成随机整数 随机小数,0-1之间小数的方法
# import random
# #生成0-1的随机小数
# print(random.random())
# #生成0-1的随机小数
# print(random.uniform(1, 10))
# #生成a-b的随机整数
# print(random.randint(1,10))
# #生成一个a-b,以c递增的数
# print(random.randrange(0,20,2))
# #随机返回一个列表里面的元素
# print(random.choice([1,2,3,4,5]))
# #shuffle()将列表的元素随机打乱
# list = [1,2,3,4,5]
# random.shuffle(list)
# print(list)

22、s = “ajldjlajfdljfddd”,去重并从小到大排序输出”adfjl”

s = 'ajldjlajfdljfddd'
s = set(s)
print(s)
s = list(s)

23、用lambda函数实现两个数相乘

cheng = lambda x : x*x
print(cheng(5))

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

list = sorted(dict.items())  #默认是以键排序的
dict1 = {}
for i in range(len(list)):
    dict1[list[i][0]] = list[i][1]
print(dict1)

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

from collections import Counter
l = "kjalfj;ldsjafl;hdsllfdhg;lahfbl;hl;ahlf;h"
l1 = Counter(l)
counter = l1.most_common()
print(counter)

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

 

27.filter方法求出列表所有奇数并构造新列表,a =  [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

l1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
l2 = filter(lambda x: x%2 !=0 , l1)  #filter(function, iterable)
l= []
for i in l2:
    l.append(i)
print(l)

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

l1 = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
l2 = [i for i in l1 if i%2 != 0]
print(l2)

29、正则re.complie作用

30、a=(1,)b=(1),c=(“1”) 分别是什么类型的数据?

a:元组,b:数字,c:字符串

31、两个列表[1,5,7,9]和[2,2,6,8]合并为[1,2,2,5,6,7,8,9]

l1 = [1,5,7,9]
l2 = [2,2,6,8]
l3= l1+l2
print(sorted(l3))

32.用python删除文件和用linux命令删除文件方法

33. log日志中,我们需要用时间戳记录error,warning等的发生时间,请用datetime模块打印当前时间戳 “2018-04-01 11:38:54”

https://blog.csdn.net/u011250186/article/details/103972471

day = datetime.datetime.fromtimestamp(int(time.time()))
print(day)

34.数据库优化查询方法

35.请列出你会的任意一种统计图(条形图、折线图等)绘制的开源库,第三方也行

36.写一段自定义异常代码

class MyError(Exception):
    def __init__(self, value):
        self.value = value
    def __str__(self):
        return repr(self.value) #将对象转化为供解释器读取的形式

try:
    raise MyError(2*2)
except MyError as e:
    print(f'my error occured,value, {e.value}')
    

37. 正则表达式匹配中,(.)和(.?)匹配区别?

38.简述Django的orm

39.[[1,2],[3,4],[5,6]]一行代码展开该列表,得出[1,2,3,4,5,6]

list = [[1,2],[3,4],[5,6]]
list1 = [j for i in list for j in i ]

40. x=”abc”,y=”def”,z=[“d”,”e”,”f”],分别求出x.join(y)和x.join(z)返回的结果

x = 'abc'
y = 'def'
z = ['d', 'e', 'f']
print(x.join(y))  #以abc来连接
print(x.join(z))

41.举例说明异常模块中try except else finally的相关意义

42. python中交换两个数值

l1 = 1
l2 =2
l3 = l1
l1= l2
l2 = l3
print(l1, l2 )

43. 举例说明zip()函数用法

将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表

l1 = '123'
l2 = '456'
l3= list(zip(l1, l2))
print(l3)

44.a=”张明 98分”,用re.sub,将98替换为100

45.写5条常用sql语句

46.a=”hello”和b=”你好”编码成bytes类型

不同操作系统编码不同, utf-8在win上没办法直接看,因为windows是GBK编码的,得转成gbk

l1 = 'hello'
b1 = '你好'
l2 = l1.encode('gbk')
b2 = b1.encode('gbk')
print(l2,b2)

47. [1,2,3]+[4,5,6]的结果是多少?

l1 = [1,2,3]
l2 = [4,5,6]
print(l1+l2) # [1, 2, 3, 4, 5, 6]

52. list=[2,3,5,4,9,6],从小到大排序,不许用sort,输出[2,3,4,5,6,9]

l1 = [2,3,5,4,9,6]
print(sorted(l1)) # [2, 3, 4, 5, 6, 9]

53.写一个单列模式

https://www.cnblogs.com/huchong/p/8244279.html

 

54.保留两位小数 : 题目本身只有a=”%.03f”%1.3335,让计算a的结果,为了扩充保留小数的思路,提供round方法(数值,保留位数)

l1 = 1.3335
print(round(l1, 2)) #1.33   round() 方法返回浮点数 x 的四舍五入值,但是并没有那么精准

56、列出常见的状态码和意义

HTTP状态码分为5种类型:

1** 信息,服务器收到请求,需要请求者继续执行操作

2** 成功,操作被成功接收并处理

3** 重定向,需要进一步的操作以完成请求

4** 客户端错误,请求包含语法错误或无法完成请求

5** 服务器错误,服务器在处理请求过程中发生了错误

58 使用pop和del删除字典中的”name”字段,dic={“name”:”zs”,”age”:18}

dic = {'name': 'zs', 'age':18}
dic.pop('name')
#del(dic['name'])
print(dic)

59.列出常见MYSQL数据存储引擎

62.简述cookie和session的区别

https://blog.csdn.net/qq_42936274/article/details/87113071

63.简述多线程、多进程

64.简述any()和all()方法

any(x)判断x对象是否为空对象,如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true

all(x)如果all(x)参数x对象的所有元素不为0、''、False或者x为空对象,则返回True,否则返回False

 

65.IOError、AttributeError、ImportError、IndentationError、IndexError、KeyError、SyntaxError、NameError分别代表什么异常

IOError: 没有权限打开文件,文件不存在,文件写入有问题

AttributeError: 属性异常

ImportError:导入模块异常

IndentationError:缩进错误导致的异常

IndexError:索引超出序列的范围

KeyError: 字典中查找一个不存在的关键字

SyntaxError:语法错误导致的异常

NameError尝试访问一个不存在的变量

66.python中copy 和 deepcopy的区别

区别 : copy是浅拷贝,只拷贝了父对象,没有拷贝对象内部的子对象

deepcopy是深拷贝,同时拷贝了父对象 和子对象

import copy
list = [1,2,3,[4,5]]
list1 = list.copy() #浅拷贝
list2 = copy.deepcopy(list) #深拷贝
list.append(6)
print(list,list1,list2) 
# [1, 2, 3, [4, 5], 6]   [1, 2, 3, [4, 5]]   [1, 2, 3, [4, 5]]
list[3].append(7)
print(list,list1,list2)
# [1, 2, 3, [4, 5, 7], 6]   [1, 2, 3, [4, 5, 7]]   [1, 2, 3, [4, 5]]

67.  列出几种魔法方法并简要介绍用途

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值