为什么我的 glob.glob 循环没有遍历文件夹中的所有文本文件?
Why is my glob.glob loop not iterating through all text files in folder?
我正在尝试从包含带有 python 3 的文本文档的文件夹中读取。具体来说,这是对 LingSpam 垃圾邮件数据集的修改。我期待我写给 return 所有 1893 个文本文档名称的代码,但是,代码而不是 return 前 420 个文件名。我不明白为什么它会在文件名总数不足时停止。有什么想法吗?
if not os.path.exists('train'): # download data
from urllib.request import urlretrieve
import tarfile
urlretrieve('http://cs.iit.edu/~culotta/cs429/lingspam.tgz', 'lingspam.tgz')
tar = tarfile.open('lingspam.tgz')
tar.extractall()
tar.close()
abc = []
for f in glob.glob("train/*.txt"):
print(f)
abc.append(f)
print(len(abc))
我已经尝试更改 glob 参数但仍然没有成功。
编辑:显然我的代码适用于除我以外的所有人。这是我的 output
成功!问题是
if not os.path.exists('train'): # download data
为了检查我的输出,我实际上已经将文件下载到我的计算机上,并且由于这一行检查了该文件夹是否存在,并且它确实存在,所以它引起了问题。我从我的机器上删除了文件,现在它可以正常工作了,尽管我怀疑 运行
from urllib.request import urlretrieve
import tarfile
urlretrieve('http://cs.iit.edu/~culotta/cs429/lingspam.tgz', 'lingspam.tgz')
tar = tarfile.open('lingspam.tgz')
tar.extractall()
tar.close()
没有 if 语句会得到相同的结果。
我正在尝试从包含带有 python 3 的文本文档的文件夹中读取。具体来说,这是对 LingSpam 垃圾邮件数据集的修改。我期待我写给 return 所有 1893 个文本文档名称的代码,但是,代码而不是 return 前 420 个文件名。我不明白为什么它会在文件名总数不足时停止。有什么想法吗?
if not os.path.exists('train'): # download data
from urllib.request import urlretrieve
import tarfile
urlretrieve('http://cs.iit.edu/~culotta/cs429/lingspam.tgz', 'lingspam.tgz')
tar = tarfile.open('lingspam.tgz')
tar.extractall()
tar.close()
abc = []
for f in glob.glob("train/*.txt"):
print(f)
abc.append(f)
print(len(abc))
我已经尝试更改 glob 参数但仍然没有成功。
编辑:显然我的代码适用于除我以外的所有人。这是我的 output
成功!问题是
if not os.path.exists('train'): # download data
为了检查我的输出,我实际上已经将文件下载到我的计算机上,并且由于这一行检查了该文件夹是否存在,并且它确实存在,所以它引起了问题。我从我的机器上删除了文件,现在它可以正常工作了,尽管我怀疑 运行
from urllib.request import urlretrieve
import tarfile
urlretrieve('http://cs.iit.edu/~culotta/cs429/lingspam.tgz', 'lingspam.tgz')
tar = tarfile.open('lingspam.tgz')
tar.extractall()
tar.close()
没有 if 语句会得到相同的结果。