我试图从这个book学习应用于机器学习的Python。 我遇到了第3章中的以下代码,我并不完全理解:
posts = [open(os.path.join(DIR, f)).read() for f in
os.listdir(DIR)]
我知道open函数的作用但是当我看到os.path.join函数和f时我感到困惑。我可以得到一个noob程序员可以理解的直观而详细的答案吗?
答案 0 :(得分:0)
这是列表理解。它等同于以下内容:
posts = []
for f in os.listdir(DIR):
filename = os.path.join(DIR, f)
file = open(filename)
content = file.read()
posts.append(content)
对于目录列表中的每个文件名,这会将文件名与完整路径组合在一起,打开它,读取它,然后将其添加到posts
列表中。