python 中带有一个通配符的 glob 函数
glob function in python with one wildcard
我对 Python 中的 glob.glob
函数有疑问。
这一行非常适合我在模型的两个后续文件夹中获取名称为 002
的所有文本文件:
All_txt = glob.glob("C:\Users\EDV\Desktop\Peter\Models\*\*[=11=]2.txt")
但是进入一个子文件夹并询问同样的问题:
All_txt = glob.glob('C:\Users\EDV\Desktop\Peter\Models\Texte\*[=12=]2.txt')
结果为空列表。有谁知道这里的问题是什么(或者知道另一个表达相同的函数)?
我仔细检查了文件夹路径,发现所有文件夹都包含这些文本文件。
尝试在字符串前面放置一个 r
以生成原始字符串:glob.glob(r'C:\Users\EDV\Desktop\Peter\Models\Texte\*[=12=]2.txt')
。这将使反斜杠不用于转义下一个字符。
你也可以像这样不用 glob:
import os
all_txt = []
root = r'C:\Users\EDV\Desktop\Peter\Models\Texte'
for d in os.listdir(root):
abs_d = os.path.join(root, d)
if os.path.isdir(abs_d):
txt = os.path.join(abs_d, '002.txt')
if os.path.isfile(txt):
all_txt.append(txt)
我对 Python 中的 glob.glob
函数有疑问。
这一行非常适合我在模型的两个后续文件夹中获取名称为 002
的所有文本文件:
All_txt = glob.glob("C:\Users\EDV\Desktop\Peter\Models\*\*[=11=]2.txt")
但是进入一个子文件夹并询问同样的问题:
All_txt = glob.glob('C:\Users\EDV\Desktop\Peter\Models\Texte\*[=12=]2.txt')
结果为空列表。有谁知道这里的问题是什么(或者知道另一个表达相同的函数)?
我仔细检查了文件夹路径,发现所有文件夹都包含这些文本文件。
尝试在字符串前面放置一个 r
以生成原始字符串:glob.glob(r'C:\Users\EDV\Desktop\Peter\Models\Texte\*[=12=]2.txt')
。这将使反斜杠不用于转义下一个字符。
你也可以像这样不用 glob:
import os
all_txt = []
root = r'C:\Users\EDV\Desktop\Peter\Models\Texte'
for d in os.listdir(root):
abs_d = os.path.join(root, d)
if os.path.isdir(abs_d):
txt = os.path.join(abs_d, '002.txt')
if os.path.isfile(txt):
all_txt.append(txt)