2024-06-26 00:18:27 发布
网友
如果我的问题显得太幼稚或太基本,请事先原谅。我是一个仍在学习使用SE的人。你知道吗
有没有一种快速的方法将树型元组转换成矩阵型元组(三角形)?你知道吗
就是这样:
t=((1,),(2,3,),(4,5,6,),(7,8,9,10,))
对此:
t=((1,0,0,0,),(2,3,0,0,),(4,5,6,0,),(7,8,9,10,))
一个想法就够了。我可以试着自己实现它。你知道吗
如果长度小于4,则可以添加0
tuple(a+(0,)*(4-len(a)) for a in t) ((1, 0, 0, 0), (2, 3, 0, 0), (4, 5, 6, 0), (7, 8, 9, 10))
利用元组连接:(就像你说的,这只是一个开始)
>>> (1,)+(0,)*2 (1, 0, 0)
和max()和len()函数:
max()
len()
>>> len(max(((1,),(2,3,),(4,5,6,),(7,8,9,10,)),key = lambda x: len(x))) 4
即使没有优化,我也会这样做:
def tuple_to_serie(t) s = [] max_len = max( [len(tup) for tup in t] ) for tup in t : s.append( tup+(0,)*(max_len-len(tup)) ) return tuple(s)
然后:
t = tuple_to_serie(t)
如果长度小于4,则可以添加0
利用元组连接:(就像你说的,这只是一个开始)
和
max()
和len()
函数:即使没有优化,我也会这样做:
然后:
相关问题 更多 >
编程相关推荐