Я пытался читать изображения в формате jpg, но путь всегда не находился, хотя путь был правильным. Поэтому я проверил с помощью os.path.exists
. Изображение называется «ральф». И для
os.path.exists("C:\Dokumente\ralf.jpg")
Я получил ответ «ложь».
Но когда я переименовал изображение в «IMG-ralf» и попробовал:
os.path.exists("C:\Dokumente\IMG-ralf.jpg")
Он мог найти путь, и возврат был «истинным».
Кто-нибудь знает, почему переименование изображения имело значение?
Могу ли я решить проблему по-другому? У меня около 4000 изображений, имя которых связано с определенной меткой (сохранено в файле Excel с именем изображения и меткой), поэтому я не могу просто переименовать их все, потому что тогда я больше не буду знать метку. Код
Символ \
является escape-символом. Экранирование D
и I
должно генерировать предупреждение в стандартном выводе, но экранирование r
приведет к появлению допустимого символа — символа возврата каретки (https://en.wikipedia.org/wiki/Carriage_return).
Использование необработанного строкового литерала должно решить эту проблему:
os.path.exists(r"C:\Dokumente\ralf.jpg")
# Here --------^
Вместо этого также работают косые черты.
Используйте
os.path.join()
илиpathlib
, чтобы объединить пути и никогда больше не сталкиваться с такой проблемой.