lambda 函数

来源:10-19 小谈JSON、JSON对象与JSON字符串

qq_小犀牛_0

2018-03-30

def new_file(test_dir):
   #列举test_dir目录下的所有文件(名),结果以列表形式返回。
   lists=os.listdir(test_dir)
   #sort按key的关键字进行升序排序,lambda的入参fn为lists列表的元素,获取文件的最后修改时间,所以最终以文件时间从小到大排序
   #最后对lists元素,按文件修改时间大小从小到大排序。
   lists.sort(key=lambda fn:os.path.getmtime(test_dir+'\\'+fn))
   #获取最新文件的绝对路径,列表中最后一个值,文件夹+文件名
   file_path=os.path.join(test_dir,lists[-1])
   return file_path



   lists.sort(key=lambda fn:os.path.getmtime(test_dir+'\\'+fn)) 这一句代码不太明白getmtime(test_dir+'\\'+fn) fn做什么用

写回答

3回答

qq_小犀牛_0

提问者

2018-03-30

我知道了,是路径拼接

0
0

qq_小犀牛_0

提问者

2018-03-30

lists.sort(key=lambda fn:os.path.getmtime(test_dir+'\\'+fn))

这是一个匿名函数lambda fn ,定义了一个fn变量。网上看到的(test_dir+'\\'+fn),不知道这么用是什么含义。

程序跑起来没有问题

0
0

7七月

2018-03-30

请问这个fn是什么?没看到代码里再哪里定义的啊?

0
0

Python3.8系统入门+进阶 (程序员必备第二语言)

语法精讲/配套练习+思考题/原生爬虫实战

14447 学习 · 4438 问题

查看课程