u202a导致python读取路径失败问题

python3读取windows路径多出来个’\u202a’

前言

最近一直在做一个python3+tkinter的GUI项目,有一个功能需求是通过获取用户粘贴板上的文件路径然后读取相关文件内容,在中间调试的过程中发现每次拿到的路径前面都有一个\u202a,在这里做个记录。

一、什么是‘\u202a’

\u202a是一个非常神奇的字符,只会出现在windows操作系统中。而且在我们常规的查询中是无法发现,如果使用手敲将其完整复现出来的话就会发现并不会出现这种情况。

那么\u202a是什么呢

他是一个UNICODE的字符,代表着顺序。下面列举一下常见的Unicode空值字符

名称方向Unicode模式
left-to-right mark左->右u+200e隐性
right-to-left mark右->左u+200f隐性
left-to-right embedding左->右u+200a显性
right-to-left embedding右->左u+200b显性
left-to-right override左->右u+200d显性
right-to-left override右->左u+200e显性
left-to-right isolate左->右u+2066显性
right-to-left isolate右->左u+2067显性

二、他是怎么出现的呢

通常的字符复制都不会出现,一般都是因为从文件属性框安全栏里面复制了文件的路径出现。

在这里插入图片描述

三、怎么处理呢

现在我收集到的资料只有通过strip函数完成他的去除了

    path = path.strip("\u202a")

注意:这里的替换字符我使用了\u202a而不是\\u202a 我在论坛上面也查到使用‘\’ 对于我并没有效果,因此可以替换尝试。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值