python每日一题:嵌套的列表转换为简单列表

def judge(abc):###判断是否有列表嵌套,如果列表嵌套,返回1,如果列表中数据都为int,即简单列表,返回0
    for i in abc:
        if isinstance(i, list):
            return 1
    return 0


def lister(abc):
  b = [0 for i in range(0, 100)]###定义一个列表存放abc列表转换后的数据
  num = 0
  for i in abc:
      if isinstance(i, list):###判断i数据是否是列表还是数字
           for k in i:
               b[num] = k
               num += 1
      else:
           b[num]=i
           num+=1
  if judge(b[0:num]):
      return lister(b[0:num])
  else:
      return b[0:num]


a=[[[10,[[[[2,5],7],10],45],[5,45]],55,20],55,60]
print(lister(a))

调试后的结果如下:

[10, 2, 5, 7, 10, 45, 5, 45, 55, 20, 55, 60]

猜你喜欢

转载自www.cnblogs.com/xuehaiwuya0000/p/10093203.html