Training'\x00'和TypeError:stat()参数1必须是没有空字节的编码字符串,而不是s

2024-09-29 17:14:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个json文件,其中存储了以下几个文件的路径:

>> head test_data.json 
data/Benign/P_00004_LEFT_CC.tif
data/Benign/P_00004_LEFT_MLO.tif
data/Benign/P_00004_RIGHT_MLO.tif
data/Benign/P_00018_RIGHT_CC.tif

现在的问题是,当我用python读取文件并将每一行保存到一个数组中时,我在行尾加上了\x00\x00\x00\x00\x00。我试了str.rstrip()和{},但没有成功。在

enter image description here

当我尝试使用os.path.exists()来检查路径是否存在时,这会导致问题,如下所示

^{pr2}$

我在os.path.exists()处出错

TypeError: stat() argument 1 must be encoded string without null bytes, not str

我如何解决这个问题?在


Tags: 文件path路径rightjsondataosexists
1条回答
网友
1楼 · 发布于 2024-09-29 17:14:42

您可以使用rstrip('\x00'),也可以使用rstrip('\x00\n')同时剥离'\n'和{}:

>>> s = 'data/Benign/P_00004_LEFT_CC.tif\x00\x00\x00\x00\x00\n'
>>> s.rstrip('\n\x00')
'data/Benign/P_00004_LEFT_CC.tif'

也就是说,我首先会问自己空字符是如何在文件中出现的。在

您可以使用以下方法批量处理path_list的列表:

^{pr2}$

在处理文件名时使用path_list之前。在

相关问题 更多 >

    热门问题