Python对象列表,获取属性的所有“方向”

高恩

我有一个对象列表(矩形)。每个对象都有2个属性(高度和宽度)。我想获得此列表的所有“方向”(不确定如何准确地称呼它),因此(可能)交换了矩形的高度和宽度的所有2 ^ n(用于n个矩形的列表)方向。对于3个对象的列表,它看起来像这样(顺序不重要):

[R1(w, h), R2(w2, h2), R3(w3, h3)]
[R1(w, h), R2(w2, h2), R3(h3, w3)]
[R1(w, h), R2(h2, w2), R3(w3, h3)]
[R1(w, h), R2(h2, w2), R3(h3, w3)]
[R1(h, w), R2(w2, h2), R3(w3, h3)]
[R1(h, w), R2(w2, h2), R3(h3, w3)]
[R1(h, w), R2(h2, w2), R3(w3, h3)]
[R1(h, w), R2(h2, w2), R3(h3, w3)]

我的矩形类如下所示:

class Rectangle:
    def __init__(self, height, width):
        self.height = height
        self.width = width

    def place(self):
        """Method to place tile in a larger grid"""

    def remove(self):
        """Method to remove tile from larger grid"""

是否有捷径可寻?

斯蒂芬·波希曼(Stefan Pochmann)

准备:

class Rectangle:
    def __init__(self, height, width):
        self.height = height
        self.width = width

    def flipped(self):
        return Rectangle(self.width, self.height)

    def __repr__(self):
        return 'Rectangle({}, {})'.format(self.height, self.width)

rectangles = [Rectangle(1, 10), Rectangle(2, 20), Rectangle(3, 30)]

解决方案:

from itertools import product
for orientation in product(*zip(rectangles, map(Rectangle.flipped, rectangles))):
    print(orientation)

输出:

(Rectangle(1, 10), Rectangle(2, 20), Rectangle(3, 30))
(Rectangle(1, 10), Rectangle(2, 20), Rectangle(30, 3))
(Rectangle(1, 10), Rectangle(20, 2), Rectangle(3, 30))
(Rectangle(1, 10), Rectangle(20, 2), Rectangle(30, 3))
(Rectangle(10, 1), Rectangle(2, 20), Rectangle(3, 30))
(Rectangle(10, 1), Rectangle(2, 20), Rectangle(30, 3))
(Rectangle(10, 1), Rectangle(20, 2), Rectangle(3, 30))
(Rectangle(10, 1), Rectangle(20, 2), Rectangle(30, 3))

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

获取所有属性java对象

来自分类Dev

获取对象的所有属性的列表

来自分类Dev

Python获取具有匹配属性的列表中的对象

来自分类Dev

如何获取所有Wikidata属性的列表?

来自分类Dev

获取具有嵌套列表属性的List的所有值

来自分类Dev

如何为列表中所有对象的属性添加值

来自分类Dev

ActionScript 3-如何从我的对象获取所有属性?

来自分类Dev

MAYA中的PYTHON:获取所有属性

来自分类Dev

“列表”对象没有属性“获取”

来自分类Dev

检查对象列表中的所有属性是否相等

来自分类Dev

从对象数组获取所有唯一的对象属性

来自分类Dev

如何在javascript中获取文件对象的所有属性?

来自分类Dev

获取对象的所有属性的列表

来自分类Dev

Python:断言列表中的所有对象都具有特定的属性值

来自分类Dev

如何在python中以列表的形式获取类的所有属性

来自分类Dev

检索列表中的所有对象在python中的属性是否具有相同的值

来自分类Dev

MAYA中的PYTHON:获取所有属性

来自分类Dev

获取所有salesforce对象中所有字段的列表

来自分类Dev

Selenium获取python的所有属性

来自分类Dev

播放/ Ebean无法获取ManyToOne相关对象的所有属性

来自分类Dev

获取Windows 10中Excel对象的所有属性的列表

来自分类Dev

从对象列表Javascript / TypeScript获取所有可能的对象键

来自分类Dev

从列表中获取所有对象

来自分类Dev

Python - 有没有办法获取对象的所有属性

来自分类Dev

从对象中获取所有属性,包括引用成员的属性

来自分类Dev

试图在python中获取dynamodb列中所有属性的列表

来自分类Dev

使用python 获取vnet 的所有属性| 列表函数只给出名称

来自分类Dev

Django annotate - 获取所有相关对象的属性

来自分类Dev

Django annotate - 获取所有相关对象的属性

Related 相关文章

  1. 1

    获取所有属性java对象

  2. 2

    获取对象的所有属性的列表

  3. 3

    Python获取具有匹配属性的列表中的对象

  4. 4

    如何获取所有Wikidata属性的列表?

  5. 5

    获取具有嵌套列表属性的List的所有值

  6. 6

    如何为列表中所有对象的属性添加值

  7. 7

    ActionScript 3-如何从我的对象获取所有属性?

  8. 8

    MAYA中的PYTHON:获取所有属性

  9. 9

    “列表”对象没有属性“获取”

  10. 10

    检查对象列表中的所有属性是否相等

  11. 11

    从对象数组获取所有唯一的对象属性

  12. 12

    如何在javascript中获取文件对象的所有属性?

  13. 13

    获取对象的所有属性的列表

  14. 14

    Python:断言列表中的所有对象都具有特定的属性值

  15. 15

    如何在python中以列表的形式获取类的所有属性

  16. 16

    检索列表中的所有对象在python中的属性是否具有相同的值

  17. 17

    MAYA中的PYTHON:获取所有属性

  18. 18

    获取所有salesforce对象中所有字段的列表

  19. 19

    Selenium获取python的所有属性

  20. 20

    播放/ Ebean无法获取ManyToOne相关对象的所有属性

  21. 21

    获取Windows 10中Excel对象的所有属性的列表

  22. 22

    从对象列表Javascript / TypeScript获取所有可能的对象键

  23. 23

    从列表中获取所有对象

  24. 24

    Python - 有没有办法获取对象的所有属性

  25. 25

    从对象中获取所有属性,包括引用成员的属性

  26. 26

    试图在python中获取dynamodb列中所有属性的列表

  27. 27

    使用python 获取vnet 的所有属性| 列表函数只给出名称

  28. 28

    Django annotate - 获取所有相关对象的属性

  29. 29

    Django annotate - 获取所有相关对象的属性

热门标签

归档