python教程技术文章
-
必须先创建.venv是因为全局pipinstall会导致所有项目共享site-packages,引发版本冲突;而python-mvenv.venv可生成完全隔离的Python环境,确保依赖互不干扰。322 收藏 -
遇到Python疑难bug应先定位根源:用logging替代print以捕获上下文,善用breakpoint()和post-mortem调试,检查对象真实类型与状态,用tracemalloc和faulthandler排查内存泄漏与C扩展崩溃。288 收藏 -
tf.graph_util.extract_sub_graph仅提取指定节点及其依赖,不自动剔除无用节点;真正裁剪需按remove_training_nodes→convert_variables_to_constants→extract_sub_graph顺序组合使用。501 收藏 -
闭包必须同时满足三个条件:存在嵌套函数、内层函数引用外层函数的局部变量、外层函数返回内层函数;缺一不可,且可通过func.__closure__是否为None来验证。367 收藏 -
是,python-opcua仍在积极维护,2026年可放心使用;截至2026年初持续更新,v1.1.1版已发布,月下载量超50万,广泛用于工业现场并符合IEC62541规范。239 收藏 -
根本原因是pip默认超时仅15秒,而PyTorch的whl包超800MB,在网络波动时极易中断;需同时设置--timeout600、--retries5、--trusted-host及--extra-index-url官方CUDA镜像,并推荐使用带自动重试的批处理脚本。436 收藏 -
最稳妥替代eval()的方案是ast.literal_eval(),它仅解析安全字面量如数字、字符串、列表、字典等,杜绝代码注入;不支持运算、函数调用、属性访问等危险操作,且需注意输入格式、异常类型、空值及编码等兼容性细节。347 收藏 -
类方法用@classmethod定义,参数为cls,可访问类属性并实现替代构造器。示例:Person.from_string创建实例;继承中cls指向子类,如Dog.get_species返回"Canine";不可访问实例属性,避免使用self。173 收藏 -
日志脱敏需精准识别并局部掩码敏感信息,如手机号138**5678;应通过自定义logging.Filter统一处理,支持正则匹配、结构化JSON字段级脱敏及环境分级策略。121 收藏 -
Python数字排序用sorted()返回新列表或.sort()原地修改列表;前者安全通用,后者高效省内存;均支持reverse=True降序和key参数自定义规则(如abs)。342 收藏 -
pd.read_excel读取日期变数字或乱码,因Excel用浮点数存日期且pandas不自动识别;数字型需用pd.to_datetime(x,unit="D",origin="1899-12-30")转换,中文文本需指定format或预处理,读取时用converters更可靠。261 收藏 -
直接用for循环切片滑动窗口很慢,因为每次切片都会复制数据,导致内存分配和拷贝开销剧增;应使用sliding_window_view生成零拷贝视图。370 收藏 -
该错误是运行时对None进行下标操作所致,因sort()等就地方法、漏写return或API失败导致返回None;需先判空再类型校验,如isinstance(items,(list,tuple))anditems。494 收藏 -
webbrowser.open()有时没反应或打不开页面,根本原因是其依赖系统底层命令(如open、start、xdg-open),在无图形环境(SSH、Docker、CI)下会静默失败,或因默认浏览器未正确注册而fallback到文本浏览器。202 收藏 -
Python排序核心是sort()与sorted(),均基于Timsort算法:sort()是列表原地方法,返回None;sorted()是通用函数,返回新列表;Timsort为稳定混合算法,key参数用于预处理元素。297 收藏