2025.2.7 Python开发岗面试复盘
2025.2.7 Python开发岗面试复盘
问题:
-
是否了解过其他语言?
了解过Java、JavaScript、C等语言,但主要技术栈是Python。
-
Python跟Java的区别?
Python是解释型语言,Java是编译型语言
Python动态类型,Java静态类型
Python简洁易读,Java相对严谨复杂
Python GIL限制并发,Java并发能力强
Python适合快速开发,Java适合大型企业级应用类型系统:Python是动态类型,Java是静态类型。
执行方式:Python是解释型语言,Java需编译为字节码后运行。
语法简洁性:Python语法简洁(如缩进代替大括号),Java更严格。
应用场景:Python适合快速开发、脚本、数据分析;Java适合企业级后端开发。
-
使用Python做什么工作?
Web开发(Flask/Django)、数据分析(pandas)、自动化脚本、爬虫等。
-
Flask、Django、FastAPI有什么区别?
Django:全栈框架,自带ORM、Admin、模板引擎,适合复杂项目。
Flask:轻量级微框架,灵活但需手动集成组件。
FastAPI:异步高性能框架,基于Pydantic和类型提示,适合API开发。
-
Flask如何获取路由参数?
通过URL规则中的变量占位符
在Flask中,获取路由参数主要有以下几种方式:
URL路径参数
@app.route('/user/<username>') def show_user(username):return f'User: {username}'
GET请求查询参数(Query String)
使用request.args获取
# 使用request.args获取 from flask import request@app.route('/search') def search():keyword = request.args.get('keyword')return f'Search: {keyword}'
POST请求表单数据
使用request.form获取
# 使用request.form获取 @app.route('/login', methods=['POST']) def login():username = request.form.get('username')password = request.form.get('password')
JSON数据
使用request.json获取