我在Python中生成了近50万种以下类型的列表:
example_list = [height, width, [characteristics]]
高度,宽度和每个特征是一个整数,正数。
找到问题解决方案的第一步是比较列表的高度和宽度。如果它们相同或具有相同的比例,我在这一步中取得成功。我可以比较比率,但我似乎无法将特征扩展到该比率。
例如,这可能是一个可能的解决方案:
first_list = [8, 12, [1, 2, 3, 4]]
second_list = [4, 6, [5, 6, 7, 8]]
因为缩放的第二个列表给出了:
scaled_second_list = [8, 12, [10, 12, 14, 16]]
第二个列表现在具有与第一个相同的高度和宽度,并且特征也被缩放,因此我可以继续进一步比较。我希望scaled_second_list继续。但我似乎无法扩大其特征。
提前致谢!
对于那些感兴趣的人;我试图找到一个矩形的2个不同的完美解剖。
答案 0 :(得分:0)
由于你已经计算了比率,我认为你因为它的嵌套而无法扩展特征子列表。 一个解决方案可能是这个,我相信这不是最优化和优雅的方式,但它会起作用。
first_list = [8, 12, [1, 2, 3, 4]]
second_list = [4, 6, [5, 6, 7, 8]]
scaled_second_list = []
ratio = 3
for i in second_list:
characteristic = []
if isinstance(i, list):
for j in i:
characteristic.append(j*2)
scaled_second_list.append(characteristic)
else:
scaled_second_list.append(i*2)
print scaled_second_list
我希望这有帮助!