问题描述
这是我的代码:
data_directory = Path('G:\Pneumonia\chest_xray\chest_xray')
train_directory = data_directory / 'train'
val_directory = data_directory / 'val'
test_directory = data_directory / 'test'
normal_cases_directory = train_directory / 'norMAL'
pneumonia_cases_directory = train_directory / 'PNEUMONIA'
normal_cases = normal_cases_directory.glob('*.jpeg')
pneumonia_cases = pneumonia_cases_directory.glob('*.jpeg')
train_data = []
for images in normal_cases:
train_data.append((images,0))
for images in pneumonia_cases:
train_data.append((images,1))
train_data = pd.DataFrame(train_data,columns=['image','label'],index=None)
这是输出:OSError:[WinError 123]文件名,目录名或卷标语法不正确:'\ u202aG:\ Pneumonia \ chest_xray \ chest_xray \ train \ norMAL'。
我在一开始注意到\ u202a符号,但我不知道如何解决它。
解决方法
使用原始字符串传递路径:
Path(r'G:\Pneumonia\chest_xray\chest_xray')
,
U+202A是影响the text's direction的不可见字符。您可能不小心将它从某处复制/粘贴到了程序源中。
(因为文本已经从左到右,所以它不会改变的方向。如果路径名是用例如阿拉伯语或希伯来语的文字书写的,则字符是有意义的,否则从右到左运行,并且您希望此拉丁字符串从左到右显示。也许您是从类似的地方复制/粘贴它的?)
您看不到它,但是只需在其上退格即可将其删除。将光标置于G:
上并向左移动;您应该注意,从G的左侧移至单引号的左侧需要两次按。同样,您可以移回G的左侧,然后键入Backspace删除那里的不可见字符。