2017-02-03 1 views
0

私はちょうど同様の質問をしましたが、これは少し異なります。どのようにファイルパス文字列をリストに入れたいのですか?Pythonで一致するフォルダパスに基づいてリストに入れる方法

今回は、基本的にネストされたファイルツリー構造をリストに作成しようとしています。私はこのリストを持っているとしましょう:

files = [ 
'user/hey.jpg', 
'user/folder1/1.txt', 
'user/folder1/folder2/random.txt,' 
'user/folder1/blah.txt', 
'user/folder3/folder4/folder5/1.txt', 
'user/folder3/folder4/folder5/3.txt', 
'user/folder3/folder4/folder5/2.txt', 
'user/1.jpg' 
] 

イム(順序を考慮しない)、この出力を得るために探して、私が正しくが、ここでこのリストをフォーマットしていない可能性があり、一般的な概念である:

['user'['1.jpg','hey.jpg','folder1'['1.txt','blah.txt','folder2'['random.txt']],'folder3'['folder4'['folder5'['1.txt','2.txt','3.txt']]]]] 

基本的にファイルツリーを表すリストを作成したいと思います。例:

user 

-folder1 

--folder2 

---random.txt 

--1.txt 

--blah.txt 

-folder3 

--folder4 

---folder5 

----1.txt 

----2.txt 

----3.txt 

-1.jpg 

-hey.jpg 

すべてのサポートをよろしくお願いします。

+0

達成したいことは何ですか? – user1767754

+0

私はできる限り最善の方法で説明しようとしていましたが、それはこの点です。ファイルパスの最初のリストをファイルツリーの構造を持つリストに変換する必要があります。これらすべての完全なパスを持つ代わりに、私はそれらが意味をなさないならば、各フォルダに含まれているものに基づいてネストすることを望みます。 – DarkMatter

答えて

0

os.walkが内蔵しています。自分で出力を再生して、目的のフォーマットにすることができます。

+0

私は簡単な例を教えてもらえますか?私はいくつかのことを試しましたが、うまく機能していません。 – DarkMatter

0

Resmarは正解でしたが、これについてはさらに詳しく説明します。私は彼の応答を受け取った後、同様の質問をし、ここで正解を与えられました:https://stackoverflow.com/a/42031496/4043494

私は携帯電話ではないときに私は実際のコードを掲載します。

関連する問題