Loading

python面试内容

后端开发

  1. 什么是websocket

http是一种单项协议,也就是客户端和服务器只有一方能主动发送数据,而websocket是一种双向协议,可以实现服务器和客户端的实时通信,避免要发送很多次http请求才能获取数据。
原理:客户端发送一个http请求建立连接,服务器返回确认消息,然后通过这个连接建立通信

  1. session、cookie、token的区别

session是一种会话,保存在服务端,针对于选项卡,关闭浏览器或选项卡会话失效。
cookie:产生在服务器端,保存在客户端,节省服务器控件,可以理解为缓存数据,比如用户名、密码等
token:令牌,比如使用ssh,就要接受保存token,一般用来做授权、校验。
安全性:session>cookie

  1. 什么是sessionStorage

  2. 手机测试流程

  3. 自动化测试环境搭建

  4. appium怎么搭建

  1. 安装jdk、appium sdk、appium gui
    2.pip install appium-python-client
    3.连接真机: 手机开启usb调试;连接模拟器:开启开发者模式;
    4.输入adb devices
    5.启动appium inspector
    6.配置appium server
    3.1 wifi连接真机:手机与PC同一网段;查看手机ip;adb connect ip:端口号;adb devices
    端口号:adb devices获取设备号;adb -s 设备号 tcpip
    https://blog.51cto.com/u_15354476/5342062
  1. python数据对象有几种?区别是什么?什么是可变序列和不可变序列?

可变: 列表list、字典dict、集合Set
不可变: 数字、str、tuple
区别:创建后能否被修改

  1. django、flask的区别是什么?

  2. 除了django、flask还有哪些开发框架?

tornado\fastapi

  1. 介绍一下scrapy

  2. 如何部署web项目?

见另一篇文章

  1. monogb的介绍和操作
  1. 介绍django、flask、django的中间件是什么

  2. python的深拷贝和浅拷贝

当原对象发生改变时,会跟着改变,深拷贝不会改变

import copy
 
# 父对象
original = [1, 2, [3, 4]]
# 浅拷贝
shallow_copy = copy.copy(original)
 
# 修改父对象中的一个子列表
original[2][0] = "changed"
 
print(original)      # 输出: [1, 2, ['changed', 4]]
print(shallow_copy)  # 输出: [1, 2, ['changed', 4]]
import copy
 
# 父对象
original = [1, 2, [3, 4]]
# 深拷贝
deep_copy = copy.deepcopy(original)
 
# 修改父对象中的一个子列表
original[2][0] = "changed"
 
print(original)      # 输出: [1, 2, ['changed', 4]]
print(deep_copy)     # 输出: [1, 2, [3, 4]]
  1. GIL是什么,为什么会有GIL,去掉会怎样,有了GIL为什么还要给程序加锁?

GIL:全局解释锁Global Interpreter Lock
Python最初的设计理念在于,为了解决多线程之间数据完整性和状态同步的问题,设计为在任意时刻只有一个线程在解释器中运行。而当执行多线程程序时,由GIL来控制同一时刻只有一个线程能够运行。即Python中的多线程是表面多线程,也可以理解为fake多线程,不是真正的多线程。
https://www.cnblogs.com/ArsenalfanInECNU/p/9968621.html
GIL是为了保证解释器的线程安全,而互斥锁是保证共享资源的线程安全;在多线程下,即使有GIL的存在,如果不使用互斥锁,还是会出现资源竞争的问题

  1. python的修饰器

  2. pandas和numpy 的面试题

  3. 爬虫相关面试题

  4. 什么是WSGI(web server gatewat interface)

  5. redis管道技术pipline

pipline可以将多条马明亮一次性发送到服务器,只要花费一次网络来回开销,提高服务性能

  1. 什么是resfulapi

  2. 如何使用flask设计api

  3. LDA

隐含狄利克雷分布,是一种词袋模型,他认为一篇文档是由一组词构成的集合,词之间没有任何关系,将文档中每篇主题按照概率分布给出

简历

posted @ 2024-06-26 00:10  踩坑大王  阅读(28)  评论(0)    收藏  举报