-
TargetEncoding会导致数据穿越,因其用类别对应目标变量均值替代原始类别,若在全量数据上计算则训练集编码泄露测试集标签;必须分折独立计算、冻结映射表并处理未知类别。328 收藏 -
在DjangoAdmin中保存模型时,可通过重写ModelAdmin的save_model方法,在首次创建对象时自动记录当前登录用户到指定字段,避免request.user为空等问题。281 收藏 -
本文详解Python类属性与实例属性的区别,指出直接通过self.attr=value修改类属性会意外创建同名实例属性,导致预期外的行为,并提供安全、清晰的解决方案。246 收藏 -
本文介绍如何将包含多个结构相似(即键集相同)字典的列表,按键集合自动分组,并将每组内各字段值聚合成列表,最终生成结构化的新字典列表。424 收藏 -
Python字符串不可变,+拼接需频繁新建对象,n次拼接产生n-1次拷贝,时间复杂度近O(n²);循环中+=性能断崖下跌,应改用list.append()+"".join()。297 收藏 -
结论:优先用dropna而非fillna,当缺失值本身是有效信号(如设备离线)、填充会扭曲计算逻辑(如t检验)或导致分布失真(如高缺失率分类变量)时必须dropna。249 收藏 -
Python3.10+推荐用T|None,兼容旧版本(≤3.9)必须用Optional[T];混用会导致语法错误;函数参数默认为None时类型必须显式包含None。397 收藏 -
Python统计元素频率最常用collections.Counter,它简洁高效且是dict子类,支持自动计数、most_common()、安全访问和算术运算;小数据量可用defaultdict(int)或字典get()/setdefault();数值型数据推荐NumPy的np.unique()或Pandas的value_counts()。217 收藏 -
Django表单验证逻辑定义在Form类的clean_fieldname或clean()方法中,调用form.is_valid()时按字段内置校验→clean_fieldname→clean()顺序执行;跨字段校验须在clean()中进行,手动报错用raiseValidationError;ModelForm外键需显式声明于fields中或视图中赋值;blank与null语义不同,空字符串需在clean中strip并校验。153 收藏 -
Python性能压测核心是模拟真实并发、监控QPS/响应时间/错误率/资源占用并分层定位瓶颈;首选Locust工具,支持脚本化场景设计、分布式压测及Web界面控制,需结合服务端psutil/Prometheus监控与数据库慢查分析,按网络→应用→依赖→系统顺序排查。468 收藏 -
Python内存泄漏主因是程序逻辑导致对象无法及时回收,常见于全局缓存未清理、回调未解绑、循环引用配合__del__及弱引用使用不当;应检查全局容器、用WeakValueDictionary、加清理策略、确保回调解绑、避免__del__、用tracemalloc等工具定位引用链。245 收藏 -
dropna(subset=[...])不删含NaN的行,因它仅识别np.nan、None、NaT为缺失值,不处理空字符串、字符串'NaN'或float('nan');需先replace转换或改用布尔索引。433 收藏 -
核心原因是默认连接池和超时策略不适用代理探测场景,需严格控制并发、设置单独超时、捕获异常、禁用DNS缓存、校验代理格式、分批执行、及时释放响应、选用合适检测地址并放宽判断逻辑。242 收藏 -
print是临时调试手段,logging是可配置、可持久、可分级的正式日志工具;核心区别在于输出目标、级别控制、格式化能力及生产环境适应性。117 收藏 -
Python函数名必须用小写字母加下划线(snake_case),模块名须全小写、无特殊字符且不与内置名冲突,避免双下划线非init文件。117 收藏