递归列出目录里的文件、匿名函数-阿里云开发者社区

开发者社区> 余二五> 正文

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

简介:
+关注继续查看

递归列出目录里的文件

#!/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










本文转自 iekegz 51CTO博客,原文链接:http://blog.51cto.com/jacksoner/2057849,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
把当前目录文件名输出到一个文件
linux ls > filename.txt --打印当前目录及子目录所有文件 find "$PWD" > print.txt window dos dir > filename.txt --打印当前目录及子目录所有文件 dir /s /b > print.
737 0
2014秋C++ 第12周项目 C++函数新特征与递归函数
课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。  【项目1- 阅读程序】阅读下列程序,写出程序的运行结果。上机时运行程序,与你的预期进行对照、理解。如果对运行结果和其背后的原理仍不理解,请通过单步执行的手段跟踪理解。(1)阅读下面两个有静态局部变量
1130 0
CV:基于Keras利用CNN主流架构之mini_XCEPTION训练情感分类模型hdf5并保存到指定文件夹下
CV:基于Keras利用CNN主流架构之mini_XCEPTION训练情感分类模型hdf5并保存到指定文件夹下
24 0
取文件头命令
 dd if=***.img bs=1 skip=172 > ***_nohead.bin
405 0
lambda匿名函数使用
#!/usr/bin/pythonfun=lambda x:x*x-xprint fun(3)
435 0
+关注
12613
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载