Python:有人能解释一下吗;f代表“中的f”;
谁能详细解释一下这意味着什么<代码>f代表f,例如…Python:有人能解释一下吗;f代表“中的f”;,python,python-3.x,for-loop,Python,Python 3.x,For Loop,谁能详细解释一下这意味着什么f代表f,例如… list = [f for f in os.listdir(os.getcwd()) if os.path.isdir(f)] print(list) 我理解basic for循环的语法,但是我已经见过很多次这种类型的东西了,我发现它非常混乱。我一直在搜索,我能找到的只是有关格式的信息。我大约一个月前才开始学习python,现在还在学习。谢谢你的帮助 它被称为 列表理解提供了创建列表的简明方法。常见的 应用程序将创建新的列表,其中每个元素都是 应用
list = [f for f in os.listdir(os.getcwd()) if os.path.isdir(f)]
print(list)
我理解basic for循环的语法,但是我已经见过很多次这种类型的东西了,我发现它非常混乱。我一直在搜索,我能找到的只是有关格式的信息。我大约一个月前才开始学习python,现在还在学习。谢谢你的帮助 它被称为
列表理解提供了创建列表的简明方法。常见的
应用程序将创建新的列表,其中每个元素都是
应用于另一序列或序列的每个成员的某些操作
iterable,或创建满足
一定条件
假设您想要创建一个值为0到100的列表
list = [i for i in range(100)]
在这里,i
将被添加到列表中,同时从0迭代到100
如果需要任何规则,可以在循环中使用If
语句,如:
list = [i for i in range(100) if i%2 == 0]
这里,由于
if
语句,只有可被2整除的数字才会添加到列表中。这是一个列表理解。这个循环通常是这样写的:
文件=[]
对于os.listdir(os.getcwd())中的f:
如果os.path.isdir(f):
文件。追加(f)
这是否回答了您的问题?离题,但是。例如,您可以使用L
。;使用L
代替。我通常会说使用一些有意义的东西,比如files=[]
,但我在手机上键入了这个,我很懒,做非过滤的方法是列表(范围(100))
。虽然range
已经支持大多数操作list
支持,所以强制转换可能是多余的,但我离题了。我知道,但我没有任何东西可以重复,这就是我使用的原因,但非常感谢。