Python-root
2018-12-13 08:24
采纳率: 33.3%
浏览 2.6k

【Python】有一个多层嵌套的列表 A = [1,2,[3,4,[‘434’,[…]]]]……

有一个多层嵌套的列表 A = [1,2,[3,4,[‘434’,[…]]]],请写一段代码遍历A中的每个元素并打印出来

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • Moluth 2018-12-13 08:46
    已采纳

    一个递归程序,亲测可行,别忘记点采纳本答案

    def lst2str(lst):
        if type(lst)!=list:
            return str(lst)
        else:
            ll=len(lst)
            if ll==0:
                return "[]"
            res="["
            for i in range(ll-1):
                res+=lst2str(lst[i])+","
            res+=lst2str(lst[ll-1])+"]"
            return res
    
    lst=[1,2,[3,4,5],6,7,[8,[9,10,11],12],[],[1]]
    print lst2str(lst)
    

    输出:[1,2,[3,4,5],6,7,[8,[9,10,11],12],[],[1]]

    点赞 打赏 评论
  • hpulfc 2018-12-14 08:49

    一个基于生成器的解析 列表的小程序

    def extract_list(x):
        for item in x:
            if isinstance(item, list):
                for i in extract_list(item):
                    yield i
            else:
                yield item
    
    
    x = ["a", ["b", ["c", "d"]]]
    print [item for item in extract_list(x)]
    
    点赞 打赏 评论

相关推荐 更多相似问题