繁体   English   中英

从python生成器对象获取文件名

[英]getting filename from python generator object

我是python的新手。 我正在学习os.walk和yield。 如果我尝试在下面print(fname) ,它将打印一个生成器对象。 如何打印生成的实际文件名。

import os, fnmatch

def locate(pattern, root=os.curdir):

    for path, dirs, files in os.walk(os.paths.abspath(root)):
        for filename in fnmatch.filter(files,pattern):
            yield os.path.join(path,filename)


if __name__ == '__main__':
    fname = locate('assert.py')
    print(fname)
if __name__ == '__main__':
    for fname in locate('assert.py')
        print(fname)

直到需要(或迭代)生成器才会进行评估

print next(locate("assert.py"),"assert.py not found!")

是获得第一场比赛的一种方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM