【问题标题】:Call multiple files with glob [duplicate]使用 glob 调用多个文件 [重复]
【发布时间】:2016-05-03 15:13:04
【问题描述】:

我正在尝试使用 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 error) 'unicodeescape' codec can't decode bytes in position 2 -3:截断 \UXXXXXXXXXX 转义。”

任何想法或帮助将不胜感激。

最好的问候,

艾萨克

【问题讨论】:

标签: python glob eol


【解决方案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

【讨论】:

  • 谢谢 IanAuld,但它似乎对我不起作用。根据其他人的意见,似乎是由于添加了“r”。但是,没有 'r',我有“SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape”
猜你喜欢
  • 2015-04-15
  • 2019-04-12
  • 1970-01-01
  • 2023-04-11
  • 1970-01-01
  • 2021-04-25
  • 1970-01-01
  • 1970-01-01
  • 2011-08-25
相关资源
最近更新 更多