【发布时间】:2014-10-14 14:07:01
【问题描述】:
这是一个 Python 新手问题(感谢帖子 Import multiple excel files into python pandas and concatenate them into one dataframe)
脚本是:
import os
files = os.listdir('C:\\TEST')
files_pdf = [f for f in files if f[-3:] == 'pdf']
print files_pdf
它给出了文件夹中所有 PDF 文件的名称。
我试图从基本的方式来理解它。我猜上面最长的行是:
files_ pdf = []
for f in files:
if f[-3:] == ‘pdf’:
files_ pdf.append(f)
问题是,有什么区别? “f for f in files”的原因或原理是什么?
[for f in files if f[-3:] == 'pdf'] #doesn't work
[f for f in files if f[-3:] == 'pdf'] #works
谢谢。
【问题讨论】:
-
谢谢,沃恩·卡托。
标签: python