-
Flower0.19+版本移除了flwr.start_server,需改用flwr.server.start_server(真实部署)或flwr.simulation.start_simulation(本地仿真),且必须显式传入带参数的strategy实例并确保server/client版本、gRPC配置、权重逻辑及K8s网络四者对齐。
-
该用[...]当需多次遍历、随机访问或索引切片;用(...)当仅单次遍历、数据量大或作中间管道。生成器不可pickle、不能重复使用,且需谨慎处理StopIteration。
-
Python正则匹配文件路径需考虑系统差异,1.Windows路径使用反斜杠需转义,建议用原始字符串和模式r"[A-Za-z]:\(?:1+\)2";2.Linux/macOS用正斜杠,可用r"(?:/3+)+/?"匹配绝对或相对路径;3.跨平台通用方案可尝试r"(?:[A-Za-z]:)?[/\](?:4+[/\])5"但不涵盖所有情况;4.推荐优先用os.path或pathlib模块处理路径适配问题,避免复杂正则。\↩\↩/\s↩/\↩/\↩
-
Python异常处理应精准捕获具体异常类型,避免裸except;在except中需记录日志、提供默认值或包装异常;善用else和finally补全逻辑与资源清理;禁用异常做流程控制。
-
print(...,flush=True)拖慢性能因强制每次刷新缓冲区,触发额外系统调用;高频场景应优先用sys.stdout.reconfigure(line_buffering=True),或底层sys.stdout.buffer.write()手动控制刷新。
-
Python闭包需满足三条件:函数嵌套、内部函数引用外部局部变量、外部函数返回内部函数对象;它可封装状态、实现装饰器等,但需注意延迟绑定陷阱。
-
Python对象主要分为内置数据类型(如int、str、list、dict)、可变与不可变对象(如list可变,str不可变)、用户自定义类型(如class实例)及函数、模块等特殊对象,一切皆对象,可通过type()查看类型。
-
模块拆分后import失败但没报错的主因是缺失非空init__.py;循环导入需抽离公共类型或用字符串注解;集成测试和显式__all可提升可维护性。
-
Python无全局中文开关,需分别配置终端(UTF-8编码)、IDE(如VSCode语言包与Python扩展设置)、pip/PyPI(依赖系统区域与浏览器)、matplotlib(手动设中文字体)及源文件编码声明。
-
GitHub上应使用高级搜索语法language:pythonpushed:>2026-01-01stars:>1000sort:updated-desc筛选活跃项目,排除tutorial等低维护仓库,并核查CONTRIBUTING.md和PRreviewer;GitLab则需验证CI通过率、README更新时效及issue响应情况,可用python-gitlab库自动化筛选。
-
Python处理日期时间最核心的是datetime模块,含date、time、datetime、timedelta四大类;支持当前时间获取、字符串解析与格式化、加减比较运算及时区处理(推荐zoneinfo)。
-
继承Thread类适合封装复杂逻辑,重写run()方法实现任务;2.传入target函数更简洁,适用于简单任务。根据需求选择:简单任务用target方式,复杂状态管理用继承方式。
-
Python字典查找平均时间复杂度为O(1),因其底层采用哈希表,通过哈希函数将键映射到固定内存位置,配合开放寻址法处理冲突,并在负载因子超阈值时自动扩容,实现均摊O(1)。
-
SQLAlchemy是Python主流ORM工具,通过映射数据库表为Python类实现面向对象操作;支持SQLite、MySQL等数据库连接,需定义模型类、创建表、使用Session执行CRUD操作。
-
批量发送邮件需复用SMTP连接、用Jinja2动态渲染模板并隔离错误;须控制发送频率、启用TLS认证、单设收件人;注意编码、图片嵌入、反垃圾配置及服务商限频。