我试着做它,以便代码输出随机角色和随机名称,但是当我运行代码时,它给出了<main.players对象at 0x7f7b87db0bb0>,在0x7f7b87dbf3d0>上得到<主.items对象。
我试图将.name添加到打印中,但是它会说它们没有属性,我希望它打印出随机项和角色名称。
import random
class players:
def __init__ (self, role, inkey):
self.name = role
self.key=inkey
class items:
def __init__ (self, name):
self.itemname = name
self.owner=""
Roles=[["Hacker","Q"],["Lookout","P"],["Money Man","Z"],["Explosive expert","M"]]
objectroles=[]
for i in Roles:
object1 = players(i[0],i[1])
objectroles.append(object1)
Items=["Goggles","Headset","Torch","Explosives","Map","Laptop","Gloves","Drill"]
objectitems = []
for i in Items:
object2 = items(i)
objectitems.append(object2)
templist=[]
def get():
global templist
item1=random.choice(objectitems)
role1=random.choice(objectroles)
print(role1,"get the", item1)
templist.append(item1)
get()
def take():
global templist
item1=random.choice(objectitems)
role1=random.choice(objectroles)
print(role1,"take the", item1)
templist.append(item1)
take()发布于 2022-03-30 19:24:39
将__str__方法添加到类中,以更改它们的打印方式:
class players:
def __init__ (self, role, inkey):
self.name = role
self.key=inkey
def __str__(self):
return self.name
class items:
def __init__ (self, name):
self.itemname = name
self.owner=""
def __str__(self):
return self.itemnamehttps://stackoverflow.com/questions/71683007
复制相似问题