import random
class Game():
def __init__(self, username, gameId):
self.users = []
self.users.append(str(username))
self.gameId = gameId
def new_user(self, username):
self.users.append(str(username))
def remove_user(self, username):
try:
self.users.remove(username)
except:
print("[-] User not found!")
def generate_gameId():
gameId = ""
letters = 5
while(letters>0):
gameId += chr(random.randint(65, 90))
letters-=1
return(gameId)
lobby = []
for i in range(2):
lobby.append(generate_gameId())
lobby[i] = Game("Test", lobby[i])
lobby[i].new_user("Test123")
lobby[i].remove_user("Test123")
这是我为一个简单的网络游戏编写的代码,我将同时拥有多个游戏类,但我需要找到特定gameId的特定对象。配子ID是随机生成的。每次用户想要加入大厅时,他都必须输入gameId才能进入
您将如何实现这样的目标?我做错了吗?
其他人说了我要说的一切,所以我删除了我的大部分帖子,但如果你愿意,这里还有一些其他方面可以改进:
你不是在这里查找“类”。您正在查找一个类的实例,也称为对象。编程中的“类”一词总是指“对象的定义”。可以实例化类以使对象成为实例。一个很好的类比是,“类”是制造汽车的蓝图,而实例/对象是使用蓝图(类)制造的汽车本身
不要合并命名约定。如果将camel-case和snake-case结合起来,这绝不是一个好主意,请选择其中一个(python通常是snake-case)。具体来说,
generate_gameId()
应该是generate_game_id()
。这只会使编写代码更容易,而不会出现拼写错误代码中有一些东西可以重构:
Game
类的构造函数中,不需要username
参数,因为已经有了new_user
方法:然后,您可以访问游戏列表及其ID:
相关问题 更多 >
编程相关推荐