我想添加命令來繪製圖形到字符串。因此,我寫了一個遞歸函數。在python中遞歸地添加行到字符串
def draw(root,string):
string += 'Commands to draw the root'
if root.left != None:
string += 'Commands to draw a left child'
draw(root.left,string)
if root.right != None:...#same as for the left child
我很困惑。如果我使用的功能就是這樣,我的字符串並沒有改變:
>>>a = ''
>>>draw(root,a)
>>>print(a)
>>>a
''
我嘗試添加「返回字符串」,但在這種情況下,我的功能與繪畫的根源,其左,右完成後停止兒童。
作爲一個例子:
- 根= 3
- root.left = 2
- root.right = 5
2.left = 1
a='' draw(3,a) a
預期輸出:
'Commands to draw 3, Commands to draw 2, Commands to draw 5, Commands to draw 1'
我知道這只是一個例子,但是''2.left沒有太大的意義在Python。 –