我正在使用 glob 查找目录中的所有 *.shp 文件,但目录名称包含“[]”,这导致 glob 失败。任何解决方法?
我的代码是:
glob.glob(sub_dir+os.sep+'soilmu_a_*.shp')
其中 sub_dir 是:
'C:\\Users\\oh\\wss_SSA_OH001_soildb_OH_2003_[2013-12-19]\\spatial\\'
我得到的错误信息是:
*** error: bad character range
最佳答案
正如手册页中所建议的,您可以修改您的模式并包装有问题的元字符。将[
改为[[]
,]
改为[]]
(元字符对应的单个字符范围)。
例如:
pattern = sub_dir + os.se p +'soilmu_a_*.shp'
pattern = pattern.replace('[','[[]').replace(']','[]]')
glob.glob(pattern)
关于名称中带有[]的目录的python glob问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/22055500/