大家好,今天小编关注到一个比较有意思的话题,就是关于python学习树的问题,于是小编就整理了2个相关介绍python学习树的解答,让我们一起看看吧。

  1. python如何获取目录树?
  2. Python中如何表示树?

python如何获取目录树?

要获取目录树,可以使用Python的os模块中的walk()函数。

python学习树-python 树
(图片来源网络,侵删)

首先,使用os模块中的walk()函数遍历目标目录及其子目录,该函数返回一个生成器对象。

然后,通过遍历生成器对象,可以获取每个目录下的所有文件和子目录。

python学习树-python 树
(图片来源网络,侵删)

最后,可以将这些文件和子目录的路径以树状结构进行展示或保存到一个列表中。这样就可以获取目录树了。

Python中如何表示树?

class Tree:

python学习树-python 树
(图片来源网络,侵删)

def __init__(self,entry,left=None,right=None):

self.entry=entry

self.left=left

self.right=right

def __repr__(self):

args=repr(self.entry)

if self.left or self.right:

args+=',{0},{1}'.format(repr(self.left),repr(self.right))

return 'Tree({0})'.format(args)

def square_tree(t):

if t==None:

return

else:

t.entry=t.entry**2

square_tree(t.left)

square_tree(t.right)

def height(t):

if t==None:

return 0

else:

return 1+max(height(t.left),height(t.right))

def size(t):

if t==None:

return 0

else:

return size(t.left)+size(t.right)+1

def find_path(t,x):

if t==None:

return None

elif t.entry==x:

return (x,)

left=find_path(t.left,x);right=find_path(t.right,x)

if left:

return (t.entry,)+left

elif right:

return (t.entry,)+right

else:

return None

t=Tree(2,Tree(7,Tree(2),Tree(6,Tree(5),Tree(11))),Tree(15))

print(t)

a=find_path(t,5)

print(a)

到此,以上就是小编对于python学习树的问题就介绍到这了,希望介绍关于python学习树的2点解答对大家有用。