美文网首页
Python列出文件夹下所有非隐藏文件的文件名

Python列出文件夹下所有非隐藏文件的文件名

作者: Rynm | 来源:发表于2020-11-10 22:16 被阅读0次

小白要愉快地Python,做的第一个小项目。
花了整个下午和晚上的时间。

这次是心血来潮,下午走着一边喝水,突然想要将硬盘里的所有书,列个表来,排队问候。想起Python断断续续学,遥遥无期,再不用就要又重新来过了。赶紧放下水杯,正襟危坐,认真理清问题。

确认下我们的目标:获得硬盘上文件名列表,并打印出来。
1、具体文件夹下的第一层文件名字
2、具体文件夹下的所有层级文件名字(以下代码是获得所有文件名)
*要的是文件名,不带路径的。

放上代码和密密麻麻的备注:

import os
def walk(dirname):
    for name in os.listdir(dirname):
    path = os.path.join(dirname, name)
    if not name.startswith("."):
       if os.path.isfile(path):
          print(name)
       else:
          walk(path)
walk("dirname")

备注:为了美观,去掉了我密密麻麻的备注。撒手,要的可以问我拿,超级小白爱心雕刻米开朗琪罗型备注。

os.listdir返回的是:给定目录的下一层,仅单层文件名列表,包括隐藏的文件名,就是以"."开头的那些文件。
所以,这个小项目,遇到的最大难点,就是去掉这个"."开头的文件,再打印出文件名。这里用的是:

.startswith(".")

这是个布林判断,打印出的是TRUE或者False的值,以"."开头就是TRUE,我们要的是相反的,所以用 if not name.startswith("."):

很多人的解答都是基于window和Python3以下的,搞了半天都不适合我。我自己用print的方式,才慢慢测试出,以上代码,适合Mac下的Python3.8。

叮咛小白们:一定要多多食用print的方法,找出问题所在。我们搞不懂的,大概95%的print能告诉我们。

另,第一次用Markdown,怎么没有缩进,差评差评,撕咬撕咬撕咬。

相关文章

网友评论

      本文标题:Python列出文件夹下所有非隐藏文件的文件名

      本文链接:https://www.haomeiwen.com/subject/vsdsbktx.html