我有一个 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()
,str.rstrip('\n')
但没有运气。
当我尝试使用os.path.exists()
以下方法检查路径是否存在时,这会导致问题
if os.path.exists(path_list[0]):
img1 = self.loader(path_list[0])
........
我在 os.path.exists()
TypeError: stat() argument 1 must be encoded string without null bytes, not str
我该如何解决这个问题?
你可以用rstrip('\x00')
,也可以使用rstrip('\x00\n')
剥离这两个'\n'
和\x00'
并发:
>>> 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'
话虽如此,我首先会问自己文件中是如何出现 NULL 字符的。
您可以使用以下方法path_list
批量处理列表:
path_list = [item.rstrip('\n\x00') for item in path_list]
在使用之前path_list
处理文件名时。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句