OS模块转义路径-Python对于转义字符的另一种处理方法

本文探讨了从C语言向Python传递包含特殊字符的文件路径时遇到的问题,并提出了三种解决方案:1. 在字符串前加'r';2. 将所有''替换为'\';3. 编写函数处理所有转义字符,确保路径正确解析。

前言:需要从C向Python传入一个字符串,该字符串是从QT上位机界面通过选择文件得到的,类似这样:E:\datat\signal.mat ,但是用Python直接打开这个文件是不可以的,可以通过三种方式来解决这个问题:

        1、首先是在前面加上 r ,但是好像不太好实现,因为这个是作为一个字符串参数进行的传入

        2、在Python中将‘\’,全部替换为‘\\’,这样就解决了转义的问题

        3、当路径中没有转义字符的时候‘\’和‘\\’是一样的,当你进行直接的print会看到。但是当路径中有转义字符的话这时候就会比较麻烦,使用os模块也无法进行相应的转换,建议写一个函数进行相应的转换,比如replace(‘\t’,'\\t'),将转义字符表都包括进去。

(转义时ASCII一般是 \ 加八进制数字表示,所以 \ 后面最好也不要跟8以下的数字,也会被转义为对应的ASCII码)

            

                                  

转义字符描述
\(在行尾时)续行符
\\反斜杠符号
\'单引号
\"双引号
\a响铃
\b退格(Backspace)
\e转义
\000
\n换行
\v纵向制表符
\t横向制表符
\r回车
\f换页
\oyy八进制数,yy代表的字符,例如:\o12代表换行
\xyy十六进制数,yy代表的字符,例如:\x0a代表换行
\other其它的字符以普通格式输出
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值