递归列出目录里的文件匿名函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归列出目录里的文件匿名函数相关的知识,希望对你有一定的参考价值。

递归列出目录里的文件

#!/usr/bin/python

import os

import sys

def print_file(path):

    lidir=os.listdir(path)

    dirs=[i for i in lidir if os.path.isdir(os.path.join(path,i))]

    files=[i for i in lidir if os.path.isfile(os.path.join(path,i))]

    if files:

        for i in files:

            print os.path.join(path,i)

    if dirs:

        for j in dirs:

            print_file(os.path.join(path,j))

print_file(sys.argv[1])


匿名函数

匿名函数就是没有函数名的函数,即 lambda 函数,lambda 函数是一种快速定义单行的最小函数,可以用在任何需要函数的地方,lambda 可以省去定义函数的过程,让代码更加精简,而且使用 lambda 在某些时候让代码更容易理解,对于一些抽象的,不会被别的地方再重复使用的函数,有时候函数起个名字也是个难题,使用 lambda 不需要考虑命名的问题

传统的函数:

In [66]: def add(x,y):

    ...:     return x + y

    ...: 


In [67]: add(3,4)

Out[67]: 7


匿名函数:

In [68]: r=lambda x,y:x+y # lambda 语句中,冒号前是参数,可以有多个,用逗号隔开,冒号右边是返回值,lambda 语句构建的其实是一个函数对象

In [69]: r(4,5)

Out[69]: 9


以上是关于递归列出目录里的文件匿名函数的主要内容,如果未能解决你的问题,请参考以下文章

在Python中递归函数调用举例and匿名函数lambda求1~100的和及计算阶乘举例

python里的拆包引用递归与匿名函数

Python学习——复习5次课(12月2日)

01月05日 三周四次Python基础进阶

python函数 变量 递归 匿名函数 内置函数 文件操作

测开之函数进阶篇・第五篇《递归函数纯函数匿名函数偏函数》