我正在尝试使用Python转换HTML中的目录和子目录的嵌套视图。例如:
- dir
- dir
- dir
- subdir
- subdir
- subdir
- subdir
- subdir
- dir
- subdir
- subdir
- subdir
我的Python代码:
dirs = []
for dirName, subdirList, fileList in os.walk(disk):
dirs.append(dirName)
数组dirs
已成功创建并填充,但我想将此数组转换为嵌套的HTML <ul>
标记。
count = 0
for i in dirs:
if count > 0:
if dirs[count -1] in i:
html += '<ul><li>' + i + '</li></ul>'
previous = i
else:
html += '<li>' + i + '</li>'
else:
html += '<li>' + i + '</li>'
count = count + 1
但是如何将dir / subdir视图示例放入嵌套的HTML <ul>
标记中,并使用嵌套项?
答案 0 :(得分:0)
我相信使用os.lisdir()
和os.path.isdir()
以及递归函数来创建所需的html会更容易,而不是使用os.walk()
。
示例 -
import os
import os.path
def createHTML(d):
res = '<ul>'
lds = os.listdir(d)
for l in lds:
if os.path.isdir(os.path.join(d,l)):
res += '<li>' + l
res += createHTML(os.path.join(d,l))
res += '</li>'
res += '</ul>'
return res
当我运行上述内容时,在我的一个目录中,我得到了 -
答案 1 :(得分:0)
我的一位朋友开发了一个脚本来递归打印目录。
你应该看看这个:MaxHalford/Directory-Architecture 您将能够忽略具有特定扩展名的文件或显示 n 级别的目录。
输出示例:
plt.scatter(X, Y)
plt.show()
X, Y = np.meshgrid(X, Y)
Z = [1] * len(X)
fig = plt.figure()
ax = fig.add_subplot(1,1,1, projection='3d')
ax.set_xlabel('X')
ax.set_ylabel('Y')
ax.set_zlabel('Z')
ax.plot_surface(X, Y, Z)
plt.show()
sh
./probe example/