使用正则表达式模块“re”遇到的错误

源代码:
python 复制代码
model_dir = re.split("\checkpoints\", args.model_path)[0]

上面的代码中,我想要将args.model_path中checkpoints之前的部分提取出来,比如args.model_path="D:\Vscode\GitHub_Code\TPRO-main\work_dirs\luad\classification\checkpoints\mit_b0.pth",则model_dir="D:\Vscode\GitHub_Code\TPRO-main\work_dirs\luad\classification\"。

遇到的错误:
python 复制代码
re.error: bad escape \c at position 0
原因:

正则表达式中使用了 \c,但 \c 不是一个有效的转义序列,因此会引发错误。

解决措施:
python 复制代码
方法一:
model_dir = re.split("\\checkpoints\\", args.model_path)[0]
即使用"\\"代替"\"

方法二:
model_dir = re.split(r"\\checkpoints\\", args.model_path)[0]
即使用"\\\\"代替"\",同时使用了原始字符串(raw string) r 前缀,以确保正则表达式引擎能够正确解释

注意:本人使用的是Windows系统,如果是Linux系统应该不会出现这个问题。

相关推荐
阿波茨的鹅6 小时前
VSCode C++ 项目配置教程
c++·ide·vscode
凌晨一点的秃头猪11 小时前
VScode 添加远程服务器教程
ide·vscode·编辑器
Hi_kenyon11 小时前
使用vim来完全控制你的VSCode(一)
vscode·编辑器·vim
天地之于壹炁兮14 小时前
用VSCode打造高效AI开发环境:从配置到实战
ide·人工智能·vscode
卓小帅的博客1 天前
关于实现远程服务器使用本地网络的清晰简洁的教程
服务器·网络·vscode·连接超时
电子_咸鱼1 天前
【STL string 全解析:接口详解、测试实战与模拟实现】
开发语言·c++·vscode·python·算法·leetcode
这儿有一堆花1 天前
进阶 Markdown 指南:高级语法
vscode
QQ__17646198241 天前
Vscode安装步骤(详细版)
ide·vscode·编辑器
薛定e的猫咪1 天前
【调试技巧】vscode 四种断点调试,快速定位 bug
ide·vscode·python·bug
HealthScience1 天前
vscode怎么连接远程服务器/无密码(使用秘钥)登录
服务器·ide·vscode