サブファイルとすべてのサブフォルダーを走査するための Python コード例
最近看ECShop到网上找资料,发现好多说明ECShop的文件结构不全面,于是想自己弄个出来。但这是个无聊耗时的工作,自己就写了个Python脚本,可以递归遍历目录下的所有文件和所有子目录,并将结果记录到一个.xml文件中(因为想使用Notepad++的代码折叠功能,所以使用.xml文件)。
下面就是Python代码:
# -*- coding: cp936 -*- ############################################# # Written By Qian_F # # 获取文件路径列表,并写入到当前目录生成test.txt # ############################################# import os def getfilelist(filepath, tabnum=1): simplepath = os.path.split(filepath)[1] returnstr = simplepath+"目录<>"+"\n" returndirstr = "" returnfilestr = "" filelist = os.listdir(filepath) for num in range(len(filelist)): filename=filelist[num] if os.path.isdir(filepath+"/"+filename): returndirstr += "\t"*tabnum+getfilelist(filepath+"/"+filename, tabnum+1) else: returnfilestr += "\t"*tabnum+filename+"\n" returnstr += returnfilestr+returndirstr return returnstr+"\t"*tabnum+"</>\n" path = raw_input("请输入文件路径:") usefulpath = path.replace('\\', '/') if usefulpath.endswith("/"): usefulpath = usefulpath[:-1] if not os.path.exists(usefulpath): print "路径错误!" elif not os.path.isdir(usefulpath): print "输入的不是目录!" else: filelist = os.listdir(usefulpath) o=open("test.xml","w+") o.writelines(getfilelist(usefulpath)) o.close() print "成功!请查看test.xml文件"
执行该Python脚本后会在当前目录生成test.xml文件,使用Notepad++打开(以ANSI编码方式)就可以看到指定目录的文件结构了。下面是我生成的ECShop下upload目录的文件结构部分截图:
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持PHP中文网。
更多Python 遍历子文件和所有子文件夹的代码实例相关文章请关注PHP中文网!

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











LinuxターミナルでPythonバージョンを表示する際の許可の問題の解決策PythonターミナルでPythonバージョンを表示しようとするとき、Pythonを入力してください...

10時間以内にコンピューター初心者プログラミングの基本を教える方法は?コンピューター初心者にプログラミングの知識を教えるのに10時間しかない場合、何を教えることを選びますか...

fiddlereveryversings for the-middleの測定値を使用するときに検出されないようにする方法

PythonのPandasライブラリを使用する場合、異なる構造を持つ2つのデータフレーム間で列全体をコピーする方法は一般的な問題です。 2つのデータがあるとします...

UvicornはどのようにしてHTTPリクエストを継続的に聞きますか? Uvicornは、ASGIに基づく軽量のWebサーバーです。そのコア機能の1つは、HTTPリクエストを聞いて続行することです...

Pythonでは、文字列を介してオブジェクトを動的に作成し、そのメソッドを呼び出す方法は?これは一般的なプログラミング要件です。特に構成または実行する必要がある場合は...
