Вызов нескольких файлов с помощью glob
Я пытаюсь прочитать несколько файлов на моем персональном компьютере с помощью glob.glob, как показано ниже:
diri = r"C:\Users\Hoonill\Desktop\Python\BAO\2007\2011"
filin = diri + '\*10*datresult'
FileList=sorted(glob.glob(filin))
print(FileList)
мой ожидаемый результат был такой, как серия
'C:\Users\Hoonill\Desktop\Python\BAO\2007\2011\BAO_100_2011229.datresult'
,
но я получил серию
'C:\\Users\\Hoonill\\Desktop\\Python\\BAO\\2007\\2011\\BAO_100_2011229.datresult'
Я не знаю почему '\'
становиться '\\'
,
Исходя из советов других людей, этот результат, по-видимому, связан с добавлением "r" к пути к файлу, но без "r" я получил "SyntaxError: (ошибка Unicode) кодек" unicodeescape "не может декодировать байты в позиции 2-3: усеченный \UXXXXXXXX escape."
Любая идея или помощь будут действительно оценены.
С наилучшими пожеланиями,
Исаак
1 ответ
Это Python, избегающий \
символы в пути к файлу Windows. Он будет печататься нормально, если вы используете print()
Функция / оператор (в зависимости от вашей версии Python):
>>> lst = ['C:\Users\Hoonill\Desktop\Python\BAO']
>>> lst
['C:\\Users\\Hoonill\\Desktop\\Python\\BAO']
>>> for ele in lst:
... print(ele)
...
C:\Users\Hoonill\Desktop\Python\BAO