今天有个二面,线上在线共享屏幕答题。挺简单的。对Python的库函数还不是很熟悉,最近都在学习Java了,SpringBoot+Vue搭建一个博客系统。
1. python基本数据类型:
List,tuple,dict,String,Boolean,Set
Python 中主要有8种数据类型:number(数字)、string(字符串)、list(列表)、tuple(元组)、dict(字典)、set(集合)、Boolean(布尔值)、None(空值)。
2. python常见异常以及处理方法:
可以通过try except来处理异常
常见异常:文件IO流异常,空指针异常
3. 字符串的拼接可以使用+和join完成,两者有什么区别?
‘+’连接字符串性能要低l于.join。
字符串是不可变对象。+连接字符串的时候,每执行一次都会申请一块新的内存,然后复制上一个+操作的结果和本次操作的右操作符到这块内存空间,因此用+连接字符串的时候会涉及好几次内存申请和复制。
而join在连接字符串的时候,会先计算需要多大的内存存放结果,然后一次性申请所需内存并将字符串复制过去。
数据量越大,性能差别越明显,尤其在处理大数据的时候。
4. post请求的四种参数形式是什么?
content-type:json,file,
application/x-www-form-urlencoded 提交的数据按照 key1=val1&key2=val2 的方式进行编码,key 和 val 都进行了 URL 转码。
multipart/form-data 这也是常见的post请求方式,一般用来上传文件,各大服务器的支持也比较好。所以我们使用表单 上传文件 时,必须让<form>表单的enctype属性值为 multipart/form-data.
application/json
text/xml
5. 列举常用内置模块,并简单描述具体做了什么?
re 正则匹配
os 用于文件操作和文件夹操作
random 随机数相关
json 处理字典和json之间的转换
xlrd xlrd库是一个python用于操作excel的第三方库
6. python编程:已知一个字符串为 “hello_world_hhh”,如何得到一个list ["hello","world","hhh"] ?
mystr="hello_world_hhh"
result=mystr.split("_")
print(result)
7. python编程:Python 如何打印 99 乘法表?
for i in range(1,10):
for j in range(1,10):
if(j>i):
continue
print("{}*{}={}".format(i,j,i*j),end='\t')
print("",end='\n')
8. python编程:给定一个包含重复元素的list,进行去重操作。
示例:list = [1, 10, 4, 1, 2, 4, 9] ===> [1, 10, 4, 2, 9]
mylist=[1, 10, 4, 1, 2, 4, 9]
result=list(set(mylist))
print(result)
9. python编程:利用random模块,写一个6位的随机验证码,验证码内包含字母、数字(随机出现)。
result=""
tmp="0123456789abcdefgABCDEFG"
for i in range(0,6):
result=result+random.choice(tmp)
print(result)
s = string.ascii_lowercase + string.digits+string.ascii_uppercase
print(s)
print(random.sample(s, 6))
这题也是,居然忘记了random的choice函数和sample函数
10. python编程:查找字符串数组中的最长公共前缀。如果不存在公共前缀,返回空字符串 ""
leetcode 原题14
https://leetcode.cn/problems/longest-common-prefix/description/
算法这东西,不用就忘啊。去年刷的题目,今年重新写还有点费劲