【问题标题】:array resize proportionally in python [closed]数组在python中按比例调整大小[关闭]
【发布时间】:2012-12-12 08:10:39
【问题描述】:

我如何在 python 中按比例调整数组的大小,例如:

原文:

1 0
0 1

调整大小:

1 1 0 0
1 1 0 0
0 0 1 1
0 0 1 1

代码:

original = []

row1 = [1,0]
row2 = [0,1]

original.append(row1)
original.append(row2)

#how resize?

非常感谢。

【问题讨论】:

  • 这是一个多维数组(还是一个列表?),或者如何分隔行?
  • 您在示例中展示的不仅仅是调整大小,而是更类似于放大图像。在任何情况下,您都需要展示您的代码,因为没有人能猜出您是如何表示您的数组的,而且您还需要说明您已经尝试过什么以及您遇到了什么问题。

标签: python arrays resize


【解决方案1】:

如果你真的想用 Python 列表来做这件事:

SCALE_MULTIPLE = 2  # or any positive integer
new_array = []
for orig_row in original:
    new_row = []
    for orig_elem in orig_row:
        new_row.extend([orig_elem] * SCALE_MULTIPLE)
    new_array.extend(new_row[:] for _ in range(SCALE_MULTIPLE))

【讨论】:

  • 非常感谢 :),但如果 SCALE_MULTIPLE 需要像 1.5 这样的数字?
  • 那么转换没有明确定义,所以你必须决定你想怎么做(例如你是否想插入不落在干净边界上的值,等等)。
  • 好的,尽管格式错误,但感谢您回答问题:),但如果您有示例,我将不胜感激:P
猜你喜欢
  • 2011-09-20
  • 1970-01-01
  • 2020-11-13
  • 1970-01-01
  • 2012-08-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-21
相关资源
最近更新 更多