如何从函数python获取完整列表

马伯里

我对python完全陌生。所以这是我的问题。

def visitdir(path):
    result = []
    for root,dirs,files in os.walk(path):
        for filepath in files:
            result = ''.join(os.path.join(root,filepath))
            print result            
if __name__ == '__main__':
    path = raw_input("Please input the folder you want to walk:")
    visitdir(path)

输入要行走的文件夹时,它将提供完整列表。但是,如果我将其修改如下:

import os, sys
def visitdir(path):
    result = []
    for root,dirs,files in os.walk(path):
        for filepath in files:
            result = ''.join(os.path.join(root,filepath))
            return result            
if __name__ == '__main__':
    path = raw_input("Please input the folder you want to walk:")
    final = visitdir(path)
    print final

它只会给出所选路径中的一项。如果我只想获得与上一个相同的结果,该如何调用该函数?

提前致谢。

ŁukaszRogalski

return 终止给定功能的执行。

最简单的方法之一是yield从函数中获取值并生成生成器。

def visitdir(path):
    for root,dirs,files in os.walk(path):
        for filepath in files:
            result = ''.join(os.path.join(root,filepath))
            yield result

if __name__ == '__main__':
    path = raw_input("Please input the folder you want to walk:")
    print list(visitdir(path))
    # or
    for p in visitdir(path):
        print p

另一种选择是将所有中间结果存储在列表中并返回所述列表。

def visitdir(path):
    results = []
    for root,dirs,files in os.walk(path):
        for filepath in files:
            result = ''.join(os.path.join(root,filepath))
            results.append(result)            
    return results

if __name__ == '__main__':
    path = raw_input("Please input the folder you want to walk:")
    print visitdir(path)
    # or
    for p in visitdir(path):
        print p

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Python3 函数不返回完整列表

如何获取集会模型类型名称的完整列表?

如何使用exists获取产品的完整列表?

获取从rsync传输的文件的完整列表

如何在 spaCy 中获取 POS、Tag 和 Dep 的完整列表?

如何在 Django-rest-Framework 中获取相关对象的完整列表

如何获取城市和机场及其相应代码的完整列表?

节点猫鼬如何获取模式的完整列表(文档和子文档)

如何以方便的格式获取硬盘中文件的完整列表?

如何使用JavaScript中的循环获取十六进制颜色数字的完整列表

Python:获取由我的脚本及其版本导入的外部模块的完整列表

单击箭头从HTML数据列表中获取完整列表

如何在Python中将压缩列表扩展为完整列表?

在哪里可以找到JavaScript函数的完整列表?

为什么我的函数返回完整列表而不是总数?

获取所有可能的类属性的完整列表

从Microsoft Graph获取联系人的完整列表

获取全文搜索配置语言的完整列表

获取自动完成条目的完整列表?

获取我自己的 YouTube 频道订阅者的完整列表

GIT LFS:从整个存储库获取完整列表

获取Android设备对纹理压缩格式的支持的完整列表

如何获取嵌套内部列表组的完整列表,并向它们添加排序和限制。MongoDB查询

如何从安装在新系统上的磁盘上获取安装在无法运行的系统上的软件的完整列表?

如何使用“控制面板”中出现的Get-WmiObject获取“查看安装更新”的Windows的完整列表

如何使用TPL Dataflow处理输入的完整列表?

如何获得对象的方法和属性的完整列表?

如何查看ExtJs类中方法的完整列表

在SwiftUI中显示键盘时如何显示完整列表