用Python递归做个多层次的文件执行
生活随笔
收集整理的这篇文章主要介绍了
用Python递归做个多层次的文件执行
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
想用 递归实现多层次的 '.py’执行但是发现好像不能
--------------------------------------------------------------------注:如果你对python感兴趣,我这有个学习Python基地,里面有很多学习资料,感兴趣的+Q群:895817687--------------------------------------------------------------------import osdef func(path):if os.path.isdir(path):for name in os.listdir(path):base_name = os.path.join(path, name)# print(base_name)return func(base_name)elif os.path.isfile(path) and path.endswith('.py)'):# print(path)return os.system('python %s' % path)func(r'D:\GUIstudy\我要执行的文件') D:\GUIstudy\我要执行的文件\快要找到我的文件了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了\radom练习.py虽然可以找到最深层的文件,但是并没有出现预期的结果。
我觉得是os.system()立马执行了,好像不能 return
def func(path):if os.path.isdir(path):for name in os.listdir(path):base_name = os.path.join(path, name)print(base_name)return func(base_name)elif os.path.isfile(path) and path.endswith('.py)'):# print(path)#return os.system('python %s' % path)return pathos.system('python %s' % func(r'D:\GUIstudy\我要执行的文件'))既然没有得到想要的结果,我就想返回文件路径, 在外面执行。但是发现报错了
D:\GUIstudy\我要执行的文件\快要找到我的文件了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了\radom练习.py D:\Python\python.exe: can't open file 'None': [Errno 2] No such file or directory看了下传出来是什么。
print(func(r'D:\GUIstudy\我要执行的文件')) D:\GUIstudy\我要执行的文件\快要找到我的文件了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了 D:\GUIstudy\我要执行的文件\快要找到我的文件了\马上就到了\到了\radom练习.py None总结
以上是生活随笔为你收集整理的用Python递归做个多层次的文件执行的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: python 排序算法
- 下一篇: Python并发编程之多进程(一)