首页 > 解决方案 > 有没有办法设置可以放入 python 3 中的一组值?

问题描述

我开始学习python,我想知道是否有办法限制可以放入集合的值,我如何告诉用户所说的集合已满?例如 4 名玩家只能在一个团队(组)中。

标签: python-3.x

解决方案


您可以创建一个新的集合类,在添加之前检查大小。

class fixed_set(set):
     def __init__(self,n):
         self.max_size = n
     def add(self,player):
         if len(self)>=self.max_size:
             print("Max size reached")
         else:
             super().add(player)

    

此类将与正常集合完全一样,除非您尝试添加的n项目多于它将打印的项目"Max size reached"

例如:

x = fixed_set(2)     
x.add(1)
x.add(2)
x.add(3)
print(x)

将打印

Max size reached
fixed_set({1,2})

表示未添加新元素


推荐阅读