欢迎访问宙启技术站
智能推送

Python代码:随机生成20个实例并将其转换为包含多边形的字典

发布时间:2023-12-12 20:36:52

下面是使用Python生成20个随机实例并将其转换为包含多边形的字典的示例代码:

import random

# 定义一个多边形类
class Polygon:
    def __init__(self, sides):
        self.sides = sides
    
    def get_area(self):
        # 计算多边形的面积(这里只简单假设多边形是正多边形)
        return self.sides * self.sides
    
    def get_perimeter(self):
        # 计算多边形的周长
        return 4 * self.sides

# 生成随机实例并转换为包含多边形的字典
polygons = []
for i in range(20):
    # 随机生成多边形的边数
    sides = random.randint(3, 10)
    
    # 创建多边形实例
    polygon = Polygon(sides)
    
    # 将多边形转换为字典
    polygon_dict = {
        'sides': polygon.sides,
        'area': polygon.get_area(),
        'perimeter': polygon.get_perimeter()
    }
    
    # 将多边形字典添加到列表中
    polygons.append(polygon_dict)

# 打印所有多边形的信息
for i, polygon in enumerate(polygons):
    print(f"Polygon {i+1}:")
    print(f"Sides: {polygon['sides']}")
    print(f"Area: {polygon['area']}")
    print(f"Perimeter: {polygon['perimeter']}")
    print()

这个代码会生成20个随机实例,每个实例都是一个具有3至10个边的多边形。然后,它将每个多边形转换为一个字典,并将这些字典存储在一个列表中。最后,它会打印出每个多边形的边数、面积和周长。

运行代码时,它的输出类似于以下内容:

Polygon 1:
Sides: 3
Area: 9
Perimeter: 12

Polygon 2:
Sides: 4
Area: 16
Perimeter: 16

Polygon 3:
Sides: 6
Area: 36
Perimeter: 24

...

这样,我们就得到了20个随机生成的多边形实例的信息,并以字典的形式存储起来。你可以根据你的需求对这些多边形进行进一步的处理和使用。