2016-04-25 71 views
0

我使用PySVN獲取一些存儲庫信息。如何遞歸到由PySVN.Client.list()返回的列表中?

我用Client.listentries_list = client.list("https://myrepourl.com/myproject", ...)它「返回一個列表,給定路徑中每個文件的信息元組。

我想從列表/元組中獲取單個信息,這就是URL是否設置了一些屬性(has_props - bool - 如果節點具有屬性,則爲true)。

如何遞歸到entries_list並返回遠程http路徑列表,但只有那些路徑has_props設置爲True

編輯:

entries_list {list} 
    000 {tuple} 
    0 {instance} 
     data {dict} 
     'path' = https://myrepourl.com/myproject/somedirorfile1 
     'has_props' = 1 
     'kind' = dir 
    001 {tuple} 
    0 {instance} 
     data {dict} 
     'path' = https://myrepourl.com/myproject/somedirorfile2 
     'has_props' = 1 
     'kind' = file 
    002 {tuple} 
    0 {instance} 
     data {dict} 
     'path' = https://myrepourl.com/myproject/somedirorfile3 
     'has_props' = 0 
     'kind' = dir 
. 
. 
. 
+1

你能發佈一些entries_list的樣本數據? – Mani

+0

這是如此複雜,我不能複製它! – Danijel

+0

只是發佈列表中的第一個值 – Mani

回答

0

這是has_props元素如何被訪問:

has_props = entries_list[0][0][‘has_props’] 

這是如何循環並通過整個列表搜索:

entries_list = client.list("https://example.com/svnrepository/product",...) 

for entry in entries_list: 
    data_dict = entry[0] 
    has_props = data_dict['has_props'] 

    if has_props == 1: 
     print "Found props."