温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

python指定路径斜杠与反斜杠遇到的问题怎么解决

发布时间:2023-03-09 14:54:58 来源:亿速云 阅读:163 作者:iii 栏目:开发技术

这篇“python指定路径斜杠与反斜杠遇到的问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“python指定路径斜杠与反斜杠遇到的问题怎么解决”文章吧。

    指定路径斜杠与反斜杠的问题

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    报错:SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 2-3: truncated \UX

    解决方法

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    这是python中指定路径的问题,因为Windows下的路径都是反斜杆(如上图所示),在很多编程语言中会不认识"\"字符,可能会把它识别成转义字符(python就是把它当成了转义字符),如果按照Windows下的路径输入,代码运行就会出现上述的错误

    这个错误有两种解决方法:

    1. 在路径前面加一个r字母:让路径变成原始字符串,意思就是不让\n\t等有特殊含义的影响指定的路径

    imge=cv2.imread(r"C:\Users\Chengguo\Desktop\py_study\Alexnet\cifar_pictures\NO.0class6.jpg")

    2. 在所有的反斜杠前面在加一条斜杠:意思是进行斜杠转义,目的也是排除\t\n等的影响

    imge=cv2.imread("C:\\Users\\Chengguo\\Desktop\\py_study\\Alexnet\\cifar_pictures\\NO.0class6.jpg")

    这里注意一下,指定路径的话最好还是直接用正斜杠(不论是相对路径还是绝对路径),避免出现上述的错误

    imge=cv2.imread("C:/Users/Chengguo/Desktop/py_study/Alexnet/cifar_pictures/NO.0class6.jpg")

    字符串转义序列(Escape Sequences)

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    对于字符串转义序列,你需要再字符串中应用它们,确认自己清楚地知道它们的功能

    正斜杠与反斜杠

    历史渊源

    • UNIX操作系统:设计了使用 ‘/’ 的路径分割法

    • DOS系统:借鉴了UNIX的目录结构,但由于在DOS系统中,斜杠 ‘/’ 已经用来作为命令行参数的标志,因此只能使用反斜杠 ‘\’

    • Windows系统:很多时候已经没有命令行参数的干扰,因此正斜杠与反斜杠大多数情况下可以互换 

    实例验证

    桌面新建临时Excel文件——test.xlsx,绝对路径为‘C:\Users\liu19\Desktop\test.xlsx’

    下面以五种路径方式读入python:

    方式一:路径中采用反斜杠,路径前面加r

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    note:路径前加r,防止程序将 ‘\’ 当做转义字符

    方式二: 路径中采用反斜杠,路径前面不加r

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    方式三: 路径中采用双反斜杠,路径前面不加r

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    note:与方式一中加r的作用一样

    方式四:使用正斜杠,路径前面不加r

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    方式五:使用反斜杠,路径前面加r,路径中全采用小写

    python指定路径斜杠与反斜杠遇到的问题怎么解决

    小结:

    • Windows中 ‘\’ 为特殊字符,会对后面的内容进行转义(\r、\t等),在路径前面加上r之后,‘\’ 就变成了普通字符,不会再对后面的字符进行转义

    • ‘\\’ 用第一个 ‘\’ 取消第二个 ‘\’ 的转义作用

    • 使用正斜杠也是有效路径,且可以省去转义的烦恼

    • 路径大小写不敏感

    总之,若只用 ‘\’ ,则一定要去除反斜杠的转义功能,要么在整体路径前面加r,要么使用双反斜杠。 

    以上就是关于“python指定路径斜杠与反斜杠遇到的问题怎么解决”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注亿速云行业资讯频道。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI