-
__getitem__必须返回张量,因DataLoader默认用torch.stack()合并batch,而该函数仅接受torch.Tensor;返回NumPy数组会报TypeError:expectedTensor...。402 收藏 -
Python字典本身不支持LRU淘汰,需用OrderedDict实现:通过move_to_end()置顶访问项、popitem(last=False)删除最老项,确保“最近读取优先”;@lru_cache仅适用于可哈希参数且按数量限容的场景。181 收藏 -
Python语法元素包括变量赋值(动态类型、链式与解包)、内置数据类型字面量(数字、字符串、布尔值、None、容器)、运算符与表达式(算术、比较、逻辑)、结构化语法(缩进与冒号定义代码块)。211 收藏 -
finally块总是执行,且在try或except的return生效前运行;无异常时执行try→finally;有匹配except时执行try→except→finally;无匹配except时执行try→finally后异常冒泡;finally中return会覆盖原返回值。198 收藏 -
推荐初学者用标准库weakref自定义事件总线,生产项目用blinker库;核心是解耦模块依赖,需防范循环发布、异常中断、生命周期错配等陷阱。159 收藏 -
模块级变量在首次import时初始化并绑定到模块对象,生命周期与模块一致;多次import不重复执行,热重载或循环导入易致状态残留或未定义错误,需谨慎管理。448 收藏 -
np.nonzero()返回元组而非直接索引数组,二维时为(row_indices,col_indices),需用np.column_stack()转坐标;布尔索引arr[arr!=0]更轻量、直观且高效,适用于筛选与赋值。496 收藏 -
resample()降频结果全为NaN,主要因索引非DatetimeIndex、不单调或含重复时间戳;需先转为DatetimeIndex、排序并去重。287 收藏 -
Python内存泄漏主因是程序逻辑导致对象无法及时回收,常见于全局缓存未清理、回调未解绑、循环引用配合__del__及弱引用使用不当;应检查全局容器、用WeakValueDictionary、加清理策略、确保回调解绑、避免__del__、用tracemalloc等工具定位引用链。159 收藏 -
不带参数的装饰器是接收被装饰函数为唯一参数并返回新函数的单层函数;带参数的装饰器则是三层结构:外层接收装饰器参数并返回中间层装饰器,中间层接收被装饰函数,最内层接收运行时参数。403 收藏 -
Python乱码和Unicode错误的根本原因是字符编码处理不当,核心在于区分Python3中str(Unicode文本)与bytes(字节序列),并在文件读写、终端IO、网络请求等场景显式指定编码。460 收藏 -
np.argmax(arr>5)仅在存在True时安全,全False会误返0;推荐用next(iter(np.where(arr>5)[0]),-1)或np.flatnonzero(arr>5)[0]if存在else-1。404 收藏 -
PyTorchQAT需显式配置qconfig、冻结BN统计并校准后端,否则精度下降;convert()后模型固化不可修改,仅支持推理;后端须匹配硬件(fbgemm/x86,qnnpack/ARM),校准数据需充分且分布合理。290 收藏 -
直接用cProfile包裹可疑视图函数最准:开头pr.enable()、结尾pr.disable()并dump_stats,再用snakeviz分析;避免全局profile或runserver整体采样。223 收藏 -
WebSocket连接建立后立即断开,根本原因是未启动接收循环(如asyncfor或awaitrecv()),导致空闲超时被关闭;必须显式监听消息或发送ping心跳,且所有操作须在同一线程的eventloop中await,不可混用线程池。131 收藏