我正在學習python。這也是我的第一個stackoverflow問題,並在格式化輸出以顯示我的需求方面苦苦掙扎。 我正在寫一個Python代碼,用於將逗號分隔值的字符串轉換爲級別層次結構,如下所示顯示數據。python目錄結構顯示逗號分隔的字符串基於開放和封閉的括號
s = "(id,cb,e(id,fn,eT(id), ln),lc)"
我想這樣
-id
-cb
-e
--id
--fn
--eT
---id
--ln
-lc
一個輸出到目前爲止,我還做了一些編碼,但我在努力完善它。
class parent-child():
stack = []
def tree_recur(self,employee, level):
s = s[s.index("(")+1:s.rindex(")")]
ind = 0
while(s.rstrip != null or s != ""):
ss = s.index(",")
words = s[ind:ss]
parenind = words.index("(")
if parenind == -1:
stack.append(level,words)
s = s[ss+1:len(s)]
else:
stack.append(s[ss+1:parenind-1])
closeparenind = s.index(")")
ss1= s[parenind:closeparenind]
return tree_recur(self,ss1,level+1)
def main():
s = "(id,created,employee(id,firstname,employeeType(id), lastname),location)"
level = 0
print(E = parent-child(s, level))
main()
有人可以幫我完善這段代碼。我不知道如何在字符串之前打印「 - 」取決於關卡的深度。這是第1級的一個連字符,第2級的兩個連字符,第3級的三個連字符,並在括號關閉時向上移動一級。我想感謝您的幫助和時間,幫助我。
請把你所有的代碼的代碼塊 – jtmingus