Вопрос в разделе для экспертов :)
young_programmer
Есть папка содержащая в свою очередь подпапки.
Нету таких. Есть директории.
import sys, os
FILES = False
def main():
if len(sys.argv) > 2 and sys.argv[2].upper() == '/F':
global FILES; FILES = True
try:
tree(sys.argv[1])
except:
print('Usage: {} <directory>'.format(os.path.basename(sys.argv[0])))
def tree(path):
path = os.path.abspath(path)
dirs, files = listdir(path)[:2]
print(path)
walk(path, dirs, files)
if not dirs:
print('No subfolders exist')
def walk(root, dirs, files, prefix=''):
if FILES and files:
file_prefix = prefix + ('|' if dirs else ' ') + ' '
for name in files:
print(file_prefix + name)
print(file_prefix)
dir_prefix, walk_prefix = prefix + '+---', prefix + '| '
for pos, neg, name in enumerate2(dirs):
if neg == -1:
dir_prefix, walk_prefix = prefix + '\\---', prefix + ' '
print(dir_prefix + name)
path = os.path.join(root, name)
try:
dirs, files = listdir(path)[:2]
except:
pass
else:
walk(path, dirs, files, walk_prefix)
def listdir(path):
dirs, files, links = [], [], []
for name in os.listdir(path):
path_name = os.path.join(path, name)
if os.path.isdir(path_name):
dirs.append(name)
elif os.path.isfile(path_name):
files.append(name)
elif os.path.islink(path_name):
links.append(name)
return dirs, files, links
def enumerate2(sequence):
length = len(sequence)
for count, value in enumerate(sequence):
yield count, count - length, value
if __name__ == '__main__':
main()
C:\git\marcus
+---.git
| +---hooks
| +---info
| +---logs
| | \---refs
| | +---heads
| | \---remotes
| | +---origin
| | \---upstream
| +---objects
| | +---54
| | +---b6
| | +---e2
| | +---info
| | \---pack
| \---refs
| +---heads
| +---remotes
| | +---origin
| | \---upstream
| \---tags
+---docs
| \---screenshots
| \---thumbnails
\---marcus
+---locale
| \---ru
| \---LC_MESSAGES
+---management
| \---commands
+---migrations
+---static
| +---highlight.js
| | \---styles
| +---images
| | \---flags
| \---marcus
| \---sets
| \---markdown
| \---images
+---templates
| +---flatpages
| \---marcus
| +---blocks
| +---emails
| \---feeds
+---templatetags
\---wordpress_importer
А вообще, тут всё что угодно придумать можно, на что фантазии хватит. Можно в консоль, можно в тегах, можно что-нибудь графическое.